DSM vs. NSM: CPU performance tradeoffs in block-oriented query processing

  • Authors:
  • Marcin Zukowski;Niels Nes;Peter Boncz

  • Affiliations:
  • CWI, Amsterdam, The Netherlands;CWI, Amsterdam, The Netherlands;CWI, Amsterdam, The Netherlands

  • Venue:
  • Proceedings of the 4th international workshop on Data management on new hardware
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Comparisons between the merits of row-wise storage (NSM) and columnar storage (DSM) are typically made with respect to the persistent storage layer of database systems. In this paper, however, we focus on the CPU efficiency tradeoffs of tuple representations inside the query execution engine, while tuples flow through a processing pipeline. We analyze the performance in the context of query engines using so-called "block-oriented" processing -- a recently popularized technique that can strongly improve the CPU efficiency. With this high efficiency, the performance trade-offs between NSM and DSM can have a decisive impact on the query execution performance, as we demonstrate using both microbenchmarks and TPC-H query 1. This means that NSM-based database systems can sometimes benefit from converting tuples into DSM on-the-fly, and vice versa.