Hi Team,
Could anyone help me to understand High Water Mark and Low Water Mark in Couchbase.
I tried to search in CB docs but I did not find proper definition. How to set it in CB UI.
Thanks,
Debasis
Hi Team,
Could anyone help me to understand High Water Mark and Low Water Mark in Couchbase.
I tried to search in CB docs but I did not find proper definition. How to set it in CB UI.
Thanks,
Debasis
Hello @Debasis_Mallick
The HWM/LWM are levels of memory usage that are used to control items in the Data Service’s cache.
See the documentation on ejection in the Data Service. Memory | Couchbase Docs
" For each bucket, available memory is managed according to two watermarks, which are
mem_low_wat
andmem_high_wat
. If data is continuously loaded into the bucket, its quantity eventually increases to the value indicated by themem_low_wat
watermark. At this point, no action is taken. Then, as still more data is loaded, the data’s quantity increases to the value indicated by themem_high_wat
watermark. If, based on the bucket’s configuration, items can be ejected from the bucket, the Data Service ejects items from the bucket until the quantity of data has decreased to themem_low_wat
watermark. In cases where ejection cannot free enough space to support continued data-ingestion, the Data Service stops ingesting data, error messages are sent to clients, and the system displays an insufficient memory notification. When sufficient memory is again available, data-ingestion resumes.Items are selected for ejection based on metadata that each contains, indicating whether the item can be classified as Not Recently Used (NRU). If an item has not been recently used, it is a candidate for ejection."
It’s incredibly rare to change the HWM/LWM in Couchbase Server, the defaults are well tested and service the vast majority of use-cases. Maybe what you’re trying to achieve can be done without changing these ?
Thanks,
Ian McCloy (Couchbase, Dir Product)