2017-05-25 30 views

回答

3

如果您啓動一個CockroachDB節點並讓它運行幾個小時或幾天,那麼它的內存使用量穩定增長一段時間之後,在計算機總內存的25%左右達到穩定之前並不意外。有兩個因素打成了這樣:

  1. CockroachDB商店內的時間序列數據監測到自身,以便在其admin UI給力的圖表。這意味着即使您不向系統發送流量,也會定期寫入數據。

  2. 與大多數數據庫一樣,CockroachDB在內存中緩存最近訪問的數據,以便提供更快的讀取。時間序列寫入包括在內,因此時間序列數據在內存中累積,直到系統達到其配置的內存限制。

緩存大小限制默認爲機器內存的25%,但可以通過運行蟑螂開始時設置--cache標誌來控制。例如,您可以運行蟑螂啓動--cache = 512MiB以將高速緩存大小限制爲2^29個字節。

如果您完全不關心管理界面,您還可以選擇通過在啓動CockroachDB進程之前設置COCKROACH_METRICS_SAMPLE_INTERVAL環境變量來降低時間序列數據採樣的頻率。它默認每10秒採樣一次,因此您可以將其設置爲COCKROACH_METRICS_SAMPLE_INTERVAL=1m以減少以6x寫入的數據量。

相關問題