Feature Description
TDStore uses a Log-Structured Merge-tree (LSM-tree) structure to organize and store data. The LSM-tree organizes data in layers, divided into level 0 through level N. The most recently written data is first flushed to disk in the data files at level 0.Periodically, the LSM-tree initiates a compaction operation to reorganize the stored data, gradually moving data from an upper layer (level i) to the next lower layer (level i+1), thereby maintaining a healthy structure for the LSM-tree. During this process, outdated data versions are cleaned up, which frees up redundant disk space to achieve optimal read and write performance.When the database's write pressure becomes too high, the compaction operation may not be able to keep up with reorganizing the newly written data. As a result, the LSM-tree's structure degrades, and read/write performance decreases. After a certain threshold is reached, TDStore will automatically enter a "write slowdown" mode (by rate-limiting write requests) or even a "write stop" state (by rejecting all write requests). At this point, TDStore's write performance has reached its bottleneck.
tdstore_user_cf_level0_slowdown_writes_trigger is used to set the threshold for TDStore to enter write throttling state. When the number of data files at LSM-tree level 0 exceeds this parameter, TDStore will enter write throttling state, adaptively limiting the speed of all write requests. By properly setting tdstore_user_cf_level0_slowdown_writes_trigger, you can control the threshold for entering write throttling state, thereby optimizing system performance and resource usage.
Attribute Description
|
Parameter Type | UINT |
Default Value | 64 |
Value Range | 1 ~ 2147483647 |
Effective Scope | GLOBAL |
Restart Required | No |