Page 227 - 《软件学报》2021年第10期
P. 227

危剑豪  等:多查询共享技术研究综述                                                              3199


                             据管理社区已经为解决 ML 工作负载中出现的与数据管理相关的挑战进行了 10 多年的工作,
                             并已建立了多个用于高级分析的系统              [7375] .Kumarz [76] 全面介绍了此类系统,并分析了关键的数
                             据管理挑战和技术.他们将研究重点专注于 3 个互补的方向:(1)  将 ML 算法和语言与 RDBMS
                             等现有数据系统集成;(2)  将以数据管理为核心的技术(例如查询优化、分区和压缩)适应以 ML
                             工作负载为目标的新系统;(3)  将数据管理和 ML 思想相结合,以构建可改善与 ML 生命周期相
                             关的任务的系统.基于以上观点,我们认为:将 ML 方法与多查询共享技术相结合,存在着类似的
                             问题与挑战;
                    2)   目前,多查询共享在很多领域的应用还比较初步,我们希望相关团队接下来会有更进一步的研究.例
                        如,文献[8]对 OLTP 负载进行了大量研究与分析,发现 OTLP 负载也存在着较大的共享潜力.然而文中
                        所设计的 OLTPShare 还存在着诸多不足,如支持的算子有限(目前只支持表扫描、两表连接以及聚合
                        运算),不支持多查询写(插入、更新、删除)操作.未来可以先从 OLTP 负载中的写操作着手,研究其共
                        享价值,并逐步设计出写操作的共享策略.再如,目前已经开始有团队                        [39,40] 将多查询技术应用于分布
                        式数据流系统中,但其策略存在明显瑕疵(如第 3.2 节所述).我们希望之后的研究能够朝着高可用性的
                        方向展开;
                    3)   由于大多数多查询系统(如 SharedDB、QPipe、CJoin、DataPath 等)不开源,导致后续研究无法开展,
                        其他团队无法跟进,不少共享查询算法仅仅停留在模拟实验阶段.如第 3.5 节所述,很多共享算法的研
                        究往往无法考虑多查询优化过程,而只是研究运算符之间如何进行共享,如文献[16],其实现仅以简单
                        的 Java 程序来模拟数据库系统中的排序过程,而并没有将其算法在某个多查询系统中实现,因此其实
                        验不具备太多参考价值.更为重要的是:其他研究者无法对这些技术进行有效的横向对比,导致整个
                        行业没有一个统一的性能评价体系.
                    在之后的研究中,我们将会开源地实现 GQP 以及 OMP 系统,并在其上进一步实现各种多查询共享算法以
                 及优化策略.我们希望能够在平台环境相当的基础上,对目前主流的多查询共享技术进行一次全面的实验与分
                 析,旨在制定出一套该行业统一的性能评价标准;同时,也希望更多的研究者参与我们的工作.

                 References:
                 [1]    Hector GM, Ullman JD, Widom J. Database System Implementation. Vol. 672, Upper Saddle River: Prentice Hall, 2000.
                 [2]    What is the definition of OLAP? https://olap.com/olap-definition
                 [3]    What is OLTP? https://database.guide/what-is-oltp
                 [4]    Georgios G, Alonso G, Kossmann D. SharedDB: Killing one thousand queries with one stone. Proc. of the VLDB Endowment,
                     2012,5(6):526537.
                 [5]    Hong MS, Demers AJ, Gehrke J, Koch C, Riedewald M, White WM. Massively multi-query join processing in publish/subscribe
                     systems. In: Proc. of the 2007 ACM SIGMOD Int’l Conf. on Management of Data. 2007. 761772.
                 [6]    Chakravarthy US, Minker J. Multiple query processing in deductive databases using query graphs. In: Proc. of the VLDB. 1986.
                     384391.
                 [7]    Cui YS, Zhang Y, Ceng C, Feng JH, Xing XC. Database physical structure optimization technology. Ruan Jian Xue Bao/Journal of
                     Software, 2013,24(4):761780 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/4355.htm [doi: 10.3724/SP.J.
                     1001.2013.04355]
                 [8]    Rehrmann R, Binnig C, Böhm A, Kim K, Lehner W, Rizk A. OLTPShare: The case for sharing in OLTP workloads. Proc. of the
                     VLDB Endowment, 2018,11(12):17691780.
                 [9]    Finkelstein S. Common expression analysis in database applications. In: Proc. of the SIGMOD. 1982. 235245.
                [10]     Rosenthal A, Chakravarthy US. Anatomy of a Modular multiple query optimizer. In: Proc. of the VLDB. 1988. 230239.
                [11]     Chen JJ, DeWitt DJ, Tian F, Wang Y. NiagaraCQ: A scalable continuous query system for Internet databases. In: Proc. of the 2000
                     ACM SIGMOD Int’l Conf. on Management of Data. 2000. 379390.
                [12]     Giannikis G, Makreshanski D, Alonso G, Kossmann D. Shared workload optimization. Proc. of the VLDB Endowment, 2014,7(6):
                     429440.
   222   223   224   225   226   227   228   229   230   231   232