YMatrix
Quick Start
Simulate Time Series Scenarios
Standard Cluster Deployment
Data Modeling
Connecting to The database
Data Writing
Data Migration
Data Query
Scene Application Examples
Federal Query
Maintenance and Monitoring
Global Maintenance
Partition Maintenance
Backup and Restore
Cluster Expansion
Monitoring
Performance Tuning
Troubleshooting
Reference Guide
Tool Guide
Data Type
Storage Engine
Execution Engine
Configuration Parameters
SQL Reference
FAQ
In the database system, the execution engine is responsible for taking over the query plan created by the optimizer and retrieving data rows in the way specified by the optimizer.
Currently YMatrix supports the use of several execution engines:
Execution Engine | Description |
---|---|
Volcanic Execution Engine | Volcanic Execution Engine uses a volcanic model, also known as a pull-based execution model. After parsing in the database, a query tree will be generated. Each execution node of the query tree is an algebraic operator (Operator). When query execution, it will be calculated from the top to the bottom of the query tree, and the data will be pulled from the bottom to the top |
Vectorized execution engine | Vectorized execution engine is a high-performance execution engine specially designed for column-oriented storage engines (such as MARS3, MARS2, and AOCO). For common queries, there are one to two orders of magnitude performance improvements compared to traditional execution engines for row processing. The performance benefits of vectorized executors compared to scalar execution engines come from the following aspects: 1. Batch processing reduces execution overhead 2. Small batch processing improves data popularity, improves data access performance by keeping data in the CPU cache 3. Select the best processing path based on data characteristics 4. Reduce function call overhead and can further improve efficiency by utilizing the CPU's SIMD (Single Instruction, Multiple Data) instructions. 5. Column-by-column processing loading to avoid loading useless data Vectorization supports automatic docking Postgres Traditional optimizer, manually enable GPORCA optimizer |