为可扩展的数据交换释放功能冗余
Functional Dependencies Unleashed for Scalable Data Exchange
摘要:
我们解决的问题,有效地评估目标功能的依赖关系(FDS)在数据交换(DE)的过程。目标FD自然出现在许多DE场景中,包括生命科学中的场景,其中多个源关系需要在受约束的目标模式下进行结构化。然而,尽管它们被广泛使用,目标fds的评估仍然是最先进的DE引擎的瓶颈。依赖于全SQL方法的系统通常不支持目标fds,除非提供额外的信息。或者,包含这些依赖项的DE引擎通常会付出性能和可伸缩性显著下降的代价。在本文中,我们提出了一种新的基于追逐的算法,可以有效地处理目标上的任意fds。我们的方法基本上依赖于利用源到目标(s-t)元组生成依赖(tgds)和目标fds之间的相互作用。这使我们能够通过仔细排列交错的fds和(选择的)tgds来控制中间chase结果的大小。作为一个直接的结果,我们大大减少了fd的应用范围,这通常是目标fd引起的巨大开销的主要原因。此外,推理依赖交互进一步导致我们有趣的并行化的机会,产生额外的可扩展性增益。我们提供了一个概念验证的实现,我们的追逐为基础的算法和实验研究,旨在衡量其可扩展性方面的一些参数,其中的源实例的大小和每个测试场景的依赖关系的数量。最后,我们实证比较最新的DE引擎,并表明我们的算法优于他们。
英文摘要:
We address the problem of efficiently evaluating target functional dependencies (fds) in the Data Exchange (DE) process. Target fds naturally occur in many DE scenarios, including the ones in Life Sciences in which multiple source relations need to be structured under a constrained target schema. However, despite their wide use, target fds' evaluation is still a bottleneck in the state-of-the-art DE engines. Systems relying on an all-SQL approach typically do not support target fds unless additional information is provided. Alternatively, DE engines that do include these dependencies typically pay the price of a significant drop in performance and scalability. In this paper, we present a novel chase-based algorithm that can efficiently handle arbitrary fds on the target. Our approach essentially relies on exploiting the interactions between source-to-target (s-t) tuple-generating dependencies (tgds) and target fds. This allows us to tame the size of the intermediate chase results, by playing on a careful ordering of chase steps interleaving fds and (chosen) tgds. As a direct consequence, we importantly diminish the fd application scope, often a central cause of the dramatic overhead induced by target fds. Moreover, reasoning on dependency interaction further leads us to interesting parallelization opportunities, yielding additional scalability gains. We provide a proof-of-concept implementation of our chase-based algorithm and an experimental study aiming at gauging its scalability with respect to a number of parameters, among which the size of source instances and the number of dependencies of each tested scenario. Finally, we empirically compare with the latest DE engines, and show that our algorithm outperforms them.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。