2016-03-14 74 views
0

我正在使用「價值驅逐」從RAM中刪除數據。有沒有一種方法可以查找帶有數據+元數據(存儲在RAM中)的最舊文檔?Couchbase - 數據驅逐

回答

1

不,沒有辦法做你所問的,因爲Couchbase不公開這些內部參數。不過,也許還有另一種方法可以完成你想要做的任何事情。你能否描述你想要完成的事情?

編輯響應下面的評論:

作爲一般規則,你應該使用默認(值驅逐),除非你有一個令人信服的理由以切換到全屏驅逐。儘管表面上看來,通過使用完全驅逐來「節省」更多內存,但實際上,您需要在某些操作上取消性能,而這些操作現在必須打到磁盤上,而不是從內存返回響應。具體而言,緩存未命中或存在檢查比較昂貴(IO方式)以及某些類型的更新操作。

有些您可能會考慮使用完全驅逐的情況是,當您的數據集遠大於您的工作集(即經常訪問且應該在緩存中的「熱」數據)時,或者您必須存儲非常大小數值的數量,例如保持GUID到GUID的映射時,這意味着該值實際上小於元數據+密鑰。

+0

謝謝大衛。我試圖在全面驅逐和價值驅逐之間做出決定。我目前有價值驅逐集,即使數據被驅逐,也會保留元數據。當我將其改爲完全驅逐時,數據和元數據都將丟失。我正在嘗試查看哪些是既有數據又有元數據的最舊數據,從而可以確定是否需要選擇完全驅逐。例如,如果數據在被驅逐之前通常在RAM中緩存2周,那我很好。如果沒有,我必須尋找其他選擇。 –

+0

更新了我的原始答案。 –