Computing NFA Intersections in Map-Reduce.

EDBT/ICDT Workshops(2015)

引用 25|浏览9
暂无评分
摘要
Nondeterministic Finite-state Automata (NFA) are simple, yet powerful devices that model a plethora of computationally oriented phenomena. One of the advantages of NFA’s is that they are closed under several operations, such as concatenation, intersection, difference, and homomorphic images. This makes NFA’s ideally suited for a modular approach, for instance in the context of protocol design and web service composition. A simple, but illustrative example of an e-commerce application designed from components can be found in Chapter 2 in [5]. The salient operation here is the intersection of several finite state automata. Problems relating to NFA’s have been widely studied in the literature. One of the main issues for the NFA intersection problem is that the size of the output NFA is the product of the size of all input NFA’s. There is not much hope for improvement, since testing for emptiness of the intersection of a set languages represented by NFA’s is known to be PSPACE-complete [8]. The most commonly used algorithm for computing the intersection NFA is to use the Cartesian construct for product automata. If there are m input NFA’s each having n states, the product NFA will have n states. It therefore would be important to come up with good distributed algorithms for the problem. Google introduced map-reduce as a parallel programming model [4] that can work over large clusters of commodity computers. Map-reduce provides a high-level framework for designing and implementing such parallelism. A growing number of papers deal with mapreduce algorithms for various problems, for instance related to graphs [12, 9, 3, 11], and related to relational joins [2, 6, 7]. In this paper we investigate the problem of implementing the Cartesian construct in map-reduce. We follow the optimization approach of Afrati et al. [1] and analyze the replication rate required for computing the
更多
查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要