Due to the unstructuredness and the lack of schemas of graphs, such as knowledge graphs, social networks, and RDF graphs, keyword search for querying such graphs has been proposed. As graphs have become voluminous, large-scale distributed processing has attracted much interest from the database research community. While there have been several distributed systems, distributed querying techniques for keyword search are still limited. This paper proposes a novel distributed keyword search system called $\DKWS$. First, we \revise{present} a {\em monotonic} property with keyword search algorithms that guarantees correct parallelization. Second, we present a keyword search algorithm as monotonic backward and forward search phases. Moreover, we propose new tight bounds for pruning nodes being searched. Third, we propose a {\em notify-push} paradigm and $\PINE$ {\em programming model} of $\DKWS$. The notify-push paradigm allows {\em asynchronously} exchanging the upper bounds of matches across the workers and the coordinator in $\DKWS$. The $\PINE$ programming model naturally fits keyword search algorithms, as they have distinguished phases, to allow {\em preemptive} searches to mitigate staleness in a distributed system. Finally, we investigate the performance and effectiveness of $\DKWS$ through experiments using real-world datasets. We find that $\DKWS$ is up to two orders of magnitude faster than related techniques, and its communication costs are $7.6$ times smaller than those of other techniques.
翻译:由于知识图谱、社交网络和RDF图等图结构缺乏结构化特征和模式,针对此类图进行查询的关键词搜索方法被提出。随着图数据规模日益庞大,大规模分布式处理引起了数据库研究界的广泛关注。尽管已有多个分布式系统,但关键词搜索的分布式查询技术仍然有限。本文提出了一种名为$\DKWS$的新型分布式关键词搜索系统。首先,我们提出了关键词搜索算法的{\em 单调性}属性,该属性可保证正确的并行化。其次,我们提出了一种由单调性反向搜索和正向搜索阶段构成的关键词搜索算法,并为其提出了用于剪枝待搜索节点的新紧致界。第三,我们提出了$\DKWS$的{\em 通知-推送}范式与$\PINE${\em 编程模型}。通知-推送范式允许$\DKWS$中的工作节点与协调节点{\em 异步}交换匹配结果的上界。$\PINE$编程模型天然适配具有明确阶段划分的关键词搜索算法,支持{\em 抢占式}搜索以缓解分布式系统中的数据陈旧性问题。最后,我们通过使用真实数据集进行实验,验证了$\DKWS$的性能与有效性。实验表明,$\DKWS$的速度比相关技术快两个数量级,其通信开销仅为其他技术的$7.6$分之一。