The tool must be able to handle large amounts of data, all while being able to complete queries at a high speed. Currently, the dataset is 200,000 lines of data, but the tool should be able to meet the speed requirement no matter how big the data set. Using sorting algorithms such as QuickSelect to build a K-D tree, the tool should complete the tree construction in linear time.