Abstract
dc:description.abstractπd-trees are widely used in parallel databases to support efficient neighborhood and similarity queries. Supporting parallel updates to πd-trees is therefore an important operation. In this paper, we present BDL-tree, a parallel, batch-dynamic implementation of a πd-tree that allows for efficient parallel π-NN queries over dynamically changing point sets. BDL-trees consist of a log-structured set of πd-trees which can be used to efficiently insert or delete batches of points in parallel with polylogarithmic depth. Specifically, given a BDL-tree with π points, each batch of π΅ updates takes π(π΅ log2 (π + π΅)) amortized work and π(log (π + π΅) log log (π + π΅)) depth (parallel time). We provide an optimized multicore implementation of BDL-trees. Our optimizations include parallel cache-oblivious πd-tree construction and parallel bloom filter construction. Our experiments on a 36-core machine with two-way hyper-threading using a variety of synthetic and real-world datasets show that our implementation of BDL-tree achieves a self-relative speedup of up to 34.8Γ (28.4Γ on average) for batch insertions, up to 35.5Γ (27.2Γ on average) for batch deletions, and up to 46.1Γ (40.0Γ on average) for π-nearest neighbor queries. In addition, it achieves throughputs of up to 14.5 million updates/second for batch-parallel updates and 6.7 million queries/second for π-NN queries. We compare to two baseline πd-tree implementations and demonstrate that BDL-trees achieve a good tradeoff between the two baseline options for implementing batch updates.
Degree
thesis:*- Name thesis:degree_name
- Master
- Department dc:contributor.department
- Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
- Grantor dc:publisher
- Massachusetts Institute of Technology
- Year dc:date.issued
- 2022
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- Yesantharao, Rahul
- Advisor dc:contributor.advisor
-
- Shun, Julian
Rights
dc:rights- Statement dc:rights
-
- In Copyright - Educational Use Permitted
- Copyright MIT
- Licence dc:rights.uri
Identifiers
dc:identifier.*- Handle dc:identifier.uri
- https://hdl.handle.net/1721.1/143277
- OAI identifier oai:identifier
- oai:dspace.mit.edu:1721.1/143277