Feature Description
TDStore utilizes a Log-Structured Merge-tree (LSM-tree) to organize and store data. The LSM-tree arranges data in layers, designated from level 0 to level N. The most recently written data is first flushed to the data files at level 0.Periodically, the LSM-tree initiates a compaction process to reorganize the stored data. This process gradually moves data from an upper level (level i) to the next lower level (level i+1), which helps maintain a healthy structure for the LSM-tree. During compaction, outdated data versions are purged, freeing up redundant disk space and achieving optimal read and write performance.However, when the database experiences excessive write pressure, the compaction process may fail to keep pace with reorganizing the incoming data. This causes the LSM-tree's structure to degrade, resulting in decreased read and write performance. Once a certain threshold is exceeded, TDStore will automatically enter a "write slowdown" mode (by rate-limiting write requests) or even a "write stop" state (by rejecting all write requests). This indicates that TDStore's write performance has reached its bottleneck.
tdstore_user_cf_hard_pending_compaction_bytes_limit is used to set the threshold for TDStore to enter the write-blocking status. When the data volume pending compaction in TDStore exceeds this parameter, TDStore will enter the write-blocking status and deny all writes. By reasonably setting tdstore_user_cf_hard_pending_compaction_bytes_limit, you can control the threshold for entering the write-blocking status, thereby optimizing system performance and resource utilization.
Attribute Description
|
Parameter Type | ULONGLONG |
Default Value | 549755813888 |
Value Range | 0 ~ 18446744073709551615 |
Effective Scope | GLOBAL |
Restart Required | No |