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 analyze
Get
and BatchGet
under the large transaction protocolChunk
encode formatIndexMerge
pathTiSpark:
Chunk
in SparkUDF
for every sparkSession
encodeKey
for the decimal typeTiKV and PD:
Infra Meetup No.120 (in Chinese)
Date: December 7th, 2019
Location: Beike Building, Nanshan District, Guangdong Province