Identifying interesting objects from a large data collection is a fundamental problem for multi-criteria decision making applications.
In Relational Database Management Systems (RDBMS), the most popular complex query operators used to solve this type of problem are the Top-K selection operator and the Skyline operator.
Top-K selection is tasked with retrieving the k-highest ranking tuples from a given relation, as determined by a user-defined aggregation function.
Skyline selection retrieves those tuples with attributes offering (pareto) optimal trade-offs in a given relation.
Efficient Top-K query processing entails minimizing tuple evaluations by utilizing elaborate processing schemes combined with sophisticated data structures that enable early termination.
Skyline query evaluation involves supporting processing strategies which are geared towards early termination and incomparable tuple pruning.
The rapid increase in memory capacity and decreasing costs have been the main drivers behind the development of main-memory database systems.
Although the act of migrating query processing in-memory has created many opportunities to improve the associated query latency, attaining such improvements has been very challenging due to the growing gap between processor and main memory speeds.
Addressing this limitation has been made easier by the rapid proliferation of multi-core and many-core architectures.
However, their utilization in real systems has been hindered by the lack of suitable parallel algorithms that focus on algorithmic efficiency.
In this thesis, we study in depth the Top-K and Skyline selection operators, in the context of emerging parallel architectures.
Our ultimate goal is to provide practical guidelines for developing work-efficient algorithms suitable for parallel main memory processing.
We concentrate on multi-core (CPU), many-core (GPU), and processing-in-memory architectures (PIM), developing solutions optimized for high throughout and low latency.
The first part of this thesis focuses on Top-K selection, presenting the specific details of early termination algorithms that we developed specifically for parallel architectures and various types of accelerators (i.e. GPU, PIM).
The second part of this thesis, concentrates on Skyline selection and the development of a massively parallel load balanced algorithm for PIM architectures.
Our work consolidates performance results across different parallel architectures using synthetic and real data on variable query parameters and distributions for both of the aforementioned problems.
The experimental results demonstrate several orders of magnitude better throughput and query latency, thus validating the effectiveness of our proposed solutions for the Top-K and Skyline selection operators.