The query execution engine plays an important role in database system performance. Inspired by the paper MonetDB/X100: Hyper-Pipelining Query Execution, we began to employ vectorized execution in TiDB to improve query performance. Last week, we published an article that deep dives into why we need vectorized execution, how we implement it, how we managed to vectorize more than 360 functions along with community contributors, and our thoughts about the future.
The full article is here:
tidb:
tikv:
tispark:
tidb-ansible:
Vectorized Expression Working Group
Date or Time built-in functions (35/38)Decimal built-in functions (26/31)Int built-in functions (174/187)JSON built-in functions (24/27)Real built-in functions (47/49)String built-in functions (100/108)Duration built-in functions (26/34)Coprocessor SIG:
Planner SIG: Add rules for the cascades planner
Last week, we landed 74 PRs in the TiDB repository, 21 PRs in the TiSpark repository, and 87 PRs in the TiKV and PD repositories.
TiDB:
GetClusterServerInfo to avoid executing the internal SQL statement to obtain the cluster topologyGoVersion from the runtime variable instead of from the shellNo database selected error for the GRANT statementmax-proc-keys and p95-proc-keys in the results of explain analyzeGet and BatchGet under the large transaction protocolChunk encode formatIndexMerge pathTiSpark:
Chunk in SparkUDF for every sparkSessionencodeKey for the decimal typeTiKV and PD:
Infra Meetup No.120 (in Chinese)
Date: December 7th, 2019
Location: Beike Building, Nanshan District, Guangdong Province
