{"title":"并行无环连接:最优算法和环分离","authors":"Xiao Hu, Yufei Tao","doi":"10.1145/3633512","DOIUrl":null,"url":null,"abstract":"<p>We study equi-join computation in the massively parallel computation (MPC) model. Currently, a main open question under this topic is whether it is possible to design an algorithm that can process any join with load \\(O(N {\\rm {polylog}} N / p^{1/\\rho ^*}) \\) — measured in the number of words communicated per machine — where <i>N</i> is the total number of tuples in the input relations, <i>ρ</i><sup>*</sup> is the join’s fractional edge covering number, and <i>p</i> is the number of machines. We settle the question in the <i>negative</i> for the class of tuple-based algorithms (all the known MPC join algorithms fall in this class) by proving the existence of a join query with <i>ρ</i><sup>*</sup> = 2 that requires a load of <i>Ω</i>(<i>N</i>/<i>p</i><sup>1/3</sup>) to evaluate. Our lower bound provides solid evidence that the “AGM bound” alone is not sufficient for characterizing the hardness of join evaluation in MPC (a phenomenon that does not exist in RAM). The hard join instance identified in our argument is cyclic, which leaves the question of whether \\(O(N {\\rm {polylog}} N / p^{1/\\rho ^*}) \\) is still possible for acyclic joins. We answer this question in the <i>affirmative</i> by showing that any acyclic join can be evaluated with load \\(O(N / p^{1/\\rho ^*}) \\), which is asymptotically optimal (there are no polylogarithmic factors in our bound). The separation between cyclic and acyclic joins is yet another phenomenon that is absent in RAM. Our algorithm owes to the discovery of a new mathematical structure — we call “canonical edge cover” — of acyclic hypergraphs, which has numerous non-trivial properties and makes an elegant addition to database theory.</p>","PeriodicalId":50022,"journal":{"name":"Journal of the ACM","volume":"59 12","pages":""},"PeriodicalIF":2.3000,"publicationDate":"2023-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Parallel Acyclic Joins: Optimal Algorithms and Cyclicity Separation\",\"authors\":\"Xiao Hu, Yufei Tao\",\"doi\":\"10.1145/3633512\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>We study equi-join computation in the massively parallel computation (MPC) model. Currently, a main open question under this topic is whether it is possible to design an algorithm that can process any join with load \\\\(O(N {\\\\rm {polylog}} N / p^{1/\\\\rho ^*}) \\\\) — measured in the number of words communicated per machine — where <i>N</i> is the total number of tuples in the input relations, <i>ρ</i><sup>*</sup> is the join’s fractional edge covering number, and <i>p</i> is the number of machines. We settle the question in the <i>negative</i> for the class of tuple-based algorithms (all the known MPC join algorithms fall in this class) by proving the existence of a join query with <i>ρ</i><sup>*</sup> = 2 that requires a load of <i>Ω</i>(<i>N</i>/<i>p</i><sup>1/3</sup>) to evaluate. Our lower bound provides solid evidence that the “AGM bound” alone is not sufficient for characterizing the hardness of join evaluation in MPC (a phenomenon that does not exist in RAM). The hard join instance identified in our argument is cyclic, which leaves the question of whether \\\\(O(N {\\\\rm {polylog}} N / p^{1/\\\\rho ^*}) \\\\) is still possible for acyclic joins. We answer this question in the <i>affirmative</i> by showing that any acyclic join can be evaluated with load \\\\(O(N / p^{1/\\\\rho ^*}) \\\\), which is asymptotically optimal (there are no polylogarithmic factors in our bound). The separation between cyclic and acyclic joins is yet another phenomenon that is absent in RAM. Our algorithm owes to the discovery of a new mathematical structure — we call “canonical edge cover” — of acyclic hypergraphs, which has numerous non-trivial properties and makes an elegant addition to database theory.</p>\",\"PeriodicalId\":50022,\"journal\":{\"name\":\"Journal of the ACM\",\"volume\":\"59 12\",\"pages\":\"\"},\"PeriodicalIF\":2.3000,\"publicationDate\":\"2023-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Journal of the ACM\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://doi.org/10.1145/3633512\",\"RegionNum\":2,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q2\",\"JCRName\":\"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of the ACM","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1145/3633512","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE","Score":null,"Total":0}
Parallel Acyclic Joins: Optimal Algorithms and Cyclicity Separation
We study equi-join computation in the massively parallel computation (MPC) model. Currently, a main open question under this topic is whether it is possible to design an algorithm that can process any join with load \(O(N {\rm {polylog}} N / p^{1/\rho ^*}) \) — measured in the number of words communicated per machine — where N is the total number of tuples in the input relations, ρ* is the join’s fractional edge covering number, and p is the number of machines. We settle the question in the negative for the class of tuple-based algorithms (all the known MPC join algorithms fall in this class) by proving the existence of a join query with ρ* = 2 that requires a load of Ω(N/p1/3) to evaluate. Our lower bound provides solid evidence that the “AGM bound” alone is not sufficient for characterizing the hardness of join evaluation in MPC (a phenomenon that does not exist in RAM). The hard join instance identified in our argument is cyclic, which leaves the question of whether \(O(N {\rm {polylog}} N / p^{1/\rho ^*}) \) is still possible for acyclic joins. We answer this question in the affirmative by showing that any acyclic join can be evaluated with load \(O(N / p^{1/\rho ^*}) \), which is asymptotically optimal (there are no polylogarithmic factors in our bound). The separation between cyclic and acyclic joins is yet another phenomenon that is absent in RAM. Our algorithm owes to the discovery of a new mathematical structure — we call “canonical edge cover” — of acyclic hypergraphs, which has numerous non-trivial properties and makes an elegant addition to database theory.
期刊介绍:
The best indicator of the scope of the journal is provided by the areas covered by its Editorial Board. These areas change from time to time, as the field evolves. The following areas are currently covered by a member of the Editorial Board: Algorithms and Combinatorial Optimization; Algorithms and Data Structures; Algorithms, Combinatorial Optimization, and Games; Artificial Intelligence; Complexity Theory; Computational Biology; Computational Geometry; Computer Graphics and Computer Vision; Computer-Aided Verification; Cryptography and Security; Cyber-Physical, Embedded, and Real-Time Systems; Database Systems and Theory; Distributed Computing; Economics and Computation; Information Theory; Logic and Computation; Logic, Algorithms, and Complexity; Machine Learning and Computational Learning Theory; Networking; Parallel Computing and Architecture; Programming Languages; Quantum Computing; Randomized Algorithms and Probabilistic Analysis of Algorithms; Scientific Computing and High Performance Computing; Software Engineering; Web Algorithms and Data Mining