• Data Warehouse Service

dws
  1. Help Center
  2. Data Warehouse Service
  3. Developer Guide
  4. System Overview
  5. High Query Performance

High Query Performance

The following features help achieve high query performance.

Fully Parallel Query

DWS is an MPP system with the shared-nothing architecture. It consists of multiple independent logical nodes that do not share system resources, such as the CPU, memory, and storage units. In this system architecture, service data is separately stored on numerous nodes. Data analysis task is executed at the location nearest the data. Massively parallel data processing enables quick response.

DWS also provides the following capabilities at the background to improve data query performance:

  • Symmetric multi-processing (SMP), which implements multi-thread parallel execution of core operators, fully utilizing multi-core CPU computing capabilities.
  • Instruction-level parallel (Vectorized executor+SIMD technology)

    Vectorized executor transmits a batch of tuples, rather than only one tuple, at a time.

    Single instruction/multiple data (SIMD) allows multiple registers to access memory at the same time after instruction decoding, obtaining multiple operations at a time for computing.

  • Low Level Virtual Machine (LLVM) dynamic compilation can be used to generate customized machine code for each query to replace original common functions. Query performance is improved by reducing redundant judgment conditions and virtual function invocation, and by making local data more accurate during actual queries.

Hybrid Row-Column Storage

DWS supports both the row and column storage models. You can choose a row- or column-store table as needed. For details, see Planning a Storage Model.

The hybrid row/column-based storage engine provides users with a better data compression ratio (column-based storage), index performance (column-based storage), and point update and point query (row-based storage) performance.

Data Compression in Column Storage

You can compress old, inactive data to free up space, reducing procurement and O&M costs.

In DWS, data can be compressed using the following Delta Value Encoding, Dictionary, RLE, LZ4, and ZLIB algorithms. The system automatically selects a compression algorithm based on data characteristics. The average compression ratio is 7:1. Compressed data can be directly accessed and is transparent to services, greatly reducing the preparation time before accessing historical data.