Specializing parallel data structures for Datalog

CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE(2022)

引用 4|浏览72
暂无评分
摘要
We see a resurgence of Datalog in a variety of applications, including program analysis, networking, data integration, cloud computing, and security. The large-scale and complexity of these applications need the efficient management of data in relations. Hence, Datalog implementations require new data structures for managing relations that (1) are parallel, (2) are highly specialized for Datalog evaluation, and (3) can accommodate different workloads depending on the applications concerning memory consumption and computational efficiency. In this article, we present a data structure framework for relations that is specialized for shared-memory parallel Datalog implementations such as the souffle Datalog compiler. The data structure framework permits a portfolio of different data structures depending on the workload. We also introduce two concrete parallel data structures for relations, designed for various workloads. Our benchmarks demonstrate a speed-up of up to 6x by using a portfolio of data structures compared with using a B-tree alone, showing the advantage of our data structure framework.
更多
查看译文
关键词
B-tree, Datalog, parallel data structure, Trie
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要