Efficient Parallel Processing for KNN Queries

Tao Jiang, Bin Zhang, Fahong Yu · 2017

The most efficient algorithms so far for top-k query over sorted lists are the best position algorithms, BPA and BPA2 and they can be deduced to answering parallel k nearest neighbor (PkNN) of a given query point q. However, BPA and BPA2 may still incur a lot of useless random accesses to (m - 1) lists, where m is the number of lists. In this paper, we propose two efficient parallel nearest neighbor algorithms using B+-tree and OpenMP programming. The PkNN algorithm based on distance priority, called DPkNN, only requires sorted access and scans all seen points on a dimension at most once. More importantly, it retrieves k NN points progressively. The improved best position algorithm, called iBPA, has about (m-1) times lower total number of accesses than that of BPA or less than that of BPA2, and the execution cost of iBPA can be far less than that of BPA and BPA2. Our performance evaluation shows that our proposed algorithms achieve significant performance gains in comparison with existing algorithms.

Read the paper · More papers on PaperTik