Note
For V2.2.30, this parameter is available starting with V2.2.30.
Description
writing_throttling_trigger_percentage specifies the threshold for write speed.
Privilege requirements
Query the parameter
systenant and all user tenants can use theSHOW PARAMETERSstatement or theGV$OB_PARAMETERSview to query this parameter.Modify the parameter
systenant and user tenants can modify this parameter.
Attributes
| Attribute | Description |
|---|---|
| Type | Int |
| Default value | 60
NoteFor V4.0.0, the default value of this parameter is changed from 100 to 60. |
| Value range | [1, 100] |
| Modifiable | Yes. You can use the ALTER SYSTEM SET statement to modify the parameter. |
| Effective upon OBServer node restart | No. The setting takes effect immediately. |
Considerations
OceanBase Database stores recently written data in MemStore. To prevent memory overflow, the system provides two important protection mechanisms:
Freezing mechanism: Data in memory is persisted to disk to release memory space.
Throttling mechanism: When memory pressure is high, the write speed is reduced to gain time for memory release.
These two mechanisms are controlled by two tenant-level parameters: freeze_trigger_percentage (freezing threshold) and
writing_throttling_trigger_percentage(throttling threshold).To avoid performance degradation caused by premature throttling, the value of
writing_throttling_trigger_percentagemust be greater than that of freeze_trigger_percentage.For V4.0.0, the default value of this parameter is changed to 60. This is because the throttling feature is very stable and is rarely triggered except for sudden import traffic in most business scenarios. In import scenarios, throttling is better than stopping writes. To achieve smooth throttling, the trigger point is set to 60 instead of 80. If the trigger point is set to 80, the remaining 20% buffer will be consumed to relieve the 80% MEMStore memory usage, resulting in a very abrupt throttling effect and a significant increase in response time on the business side.
When the memory used by MemStore reaches this threshold, write throttling is triggered. If the value of this parameter is 100, write throttling is disabled.
Examples
Set the write speed threshold to 60.
obclient> ALTER SYSTEM SET writing_throttling_trigger_percentage = 60;