Company
Date Published
Author
Oleg Kuzmin, Sr. Solutions Engineer, Couchbase
Word count
2081
Language
English
Hacker News points
None

Summary

Couchbase Server uses two ejection methods for managing memory: Value-only ejection, which maintains document keys and metadata in memory while removing only the document values, and Full ejection, which removes keys, metadata, and values. Value-only ejection offers better performance by requiring more system memory, making it suitable for applications with high read latency demands, whereas Full ejection minimizes memory requirements, which is beneficial when working within budget constraints or limited hardware resources. The choice between these methods depends on factors such as memory availability, budget, and dataset size, with Full ejection being advantageous for large datasets that exceed typical memory configurations. Switching between ejection methods requires bucket restarts, leading to downtime, so it's essential to choose wisely before deployment. Performance can be improved through the use of Upserts and dedicated fast disks, particularly with Full ejection buckets, and monitoring bucket metadata overhead can indicate when a switch to Full ejection might be necessary due to limited memory.