A new scalable parallel DBSCAN algorithm using the disjoint-set data structure. Patwary, M. M. A., Palsetia, D., Agrawal, A., Liao, W., Manne, F., & Choudhary, A. In SC '12: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, pages 1–11, November, 2012. ISSN: 2167-4337
doi  abstract   bibtex   
DBSCAN is a well-known density based clustering algorithm capable of discovering arbitrary shaped clusters and eliminating noise data. However, parallelization of DBSCAN is challenging as it exhibits an inherent sequential data access order. Moreover, existing parallel implementations adopt a master-slave strategy which can easily cause an unbalanced workload and hence result in low parallel efficiency. We present a new parallel DBSCAN algorithm (PDSDBSCAN) using graph algorithmic concepts. More specifically, we employ the disjoint-set data structure to break the access sequentiality of DBSCAN. In addition, we use a tree-based bottom-up approach to construct the clusters. This yields a better-balanced workload distribution. We implement the algorithm both for shared and for distributed memory. Using data sets containing up to several hundred million high-dimensional points, we show that PDSDBSCAN significantly outperforms the master-slave approach, achieving speedups up to 25.97 using 40 cores on shared memory architecture, and speedups up to 5,765 using 8,192 cores on distributed memory architecture.
@inproceedings{patwary_new_2012,
	title = {A new scalable parallel {DBSCAN} algorithm using the disjoint-set data structure},
	doi = {10.1109/SC.2012.9},
	abstract = {DBSCAN is a well-known density based clustering algorithm capable of discovering arbitrary shaped clusters and eliminating noise data. However, parallelization of DBSCAN is challenging as it exhibits an inherent sequential data access order. Moreover, existing parallel implementations adopt a master-slave strategy which can easily cause an unbalanced workload and hence result in low parallel efficiency. We present a new parallel DBSCAN algorithm (PDSDBSCAN) using graph algorithmic concepts. More specifically, we employ the disjoint-set data structure to break the access sequentiality of DBSCAN. In addition, we use a tree-based bottom-up approach to construct the clusters. This yields a better-balanced workload distribution. We implement the algorithm both for shared and for distributed memory. Using data sets containing up to several hundred million high-dimensional points, we show that PDSDBSCAN significantly outperforms the master-slave approach, achieving speedups up to 25.97 using 40 cores on shared memory architecture, and speedups up to 5,765 using 8,192 cores on distributed memory architecture.},
	booktitle = {{SC} '12: {Proceedings} of the {International} {Conference} on {High} {Performance} {Computing}, {Networking}, {Storage} and {Analysis}},
	author = {Patwary, Md. Mostofa Ali and Palsetia, Diana and Agrawal, Ankit and Liao, Wei-keng and Manne, Fredrik and Choudhary, Alok},
	month = nov,
	year = {2012},
	note = {ISSN: 2167-4337},
	keywords = {Clustering algorithms, Data structures, Density based clustering, Disjoint-set data structure, Instruction sets, Merging, Noise, Partitioning algorithms, Union-Find algorithm, Vegetation},
	pages = {1--11},
}

Downloads: 0