2013 · 20 citations · 25 references
ComputingComputer ScienceHigh-performance ComputingComputer ArchitectureDatabasesParallel ComputingData ParallelismMulticore Processor DesignParallel ArchitecturesParallel Computer ArchitectureParallel DatabasesQuery ProcessingCpu OptimizationData Parallel ExecutionIndex StructuresInverted Index StructuresMany-core ArchitectureParallel Execution PlansParallel Query ProcessingQuery Performance Optimization
We use the full query set of the TPC-H Benchmark as a case study for the efficient implementation of decision support queries on main memory column-store databases. Instead of splitting a query into separate independent operators, we consider the query as a whole and translate the execution plan into a single function performing the query. This allows highly efficient CPU utilization, minimal materialization, and execution in a single pass over the data for most queries. The single pass is performed in parallel and scales near-linearly with the number of cores. The resulting query plans for most of the 22 queries are remarkably simple and are suited for automatic generation and fast compilation. Using a data-parallel, NUMA-aware many-core implementation with block summaries, inverted index data structures, and efficient aggregation algorithms, we achieve one to two orders of magnitude better performance than the current record holders of the TPC-H Benchmark.
25
A fast string searching algorithm
Robert S. Boyer, J Strother Moore · Communications of the ACM · 1977 · 2.3K citations · Full text
David J. DeWitt, Jim Gray · Communications of the ACM · 1992 · 1.3K citations · Full text
Run-length encodings (Corresp.)
Solomon W. Golomb · IEEE Transactions on Information Theory · 1966 · 972 citations
C-store: a column-oriented DBMS
Mike Stonebraker, Daniel J. Abadi, Adam Batkin et al. · 2005 · 928 citations