Monitoring
OpenTSDB 和 Graphite 有什麼區別?
據我所知,主要區別如下:
- OpenTSDB不會隨時間惡化數據,這與預先確定數據庫大小的Graphite不同。
- OpenTSDB 可以每秒儲存指標,而 Graphite 具有分鐘間隔(我不確定,Graphite 文件顯示了每分鐘儲存指標的保留策略,但我不知道這是否是我們的最小時間單位可以玩)
我想就使用哪種工具來儲存指標做出明智的決定,我是否錯過了這兩個系統中的任何其他差異?它們的性能/可擴展性如何?
額外問題:我應該看看其他時間序列系統嗎?
免責聲明:我寫了OpenTSDB。
我想說Graphite的最大優勢似乎是卓越的繪圖功能。它提供了更多的圖形類型和功能。 使用 Graphite 的部署複雜性也可能稍微低一些,因為它不是分佈式系統,因此移動元件更少。
另一方面, OpenTSDB能夠儲存大量的細粒度數據點。這是以部署HBase為代價的,說實話,這沒什麼大不了的。如果您想以>>10k 新數據點/秒的速度將實時數據精確到秒,那麼 OpenTSDB 將非常適合您。
關於我們目前在 StumbleUpon 的規模的一些資訊(這些數字通常每 2-3 個月翻一番):
- 每天超過 1B 個新數據點(平均 = 12k/s)。
- 儲存了數千億個數據點。
- 消耗的磁碟空間少於 2TB(在 HDFS 進行 3 倍複製之前)。
- 讀取查詢通常能夠每秒檢索、處理和繪製超過 50 萬個數據點。