2016-04-14 72 views
0

我有100 000個源/傳感器/符號。從每一個我每天都讀取價值。創建數據庫分區以分析時間序列

我使用這些日常數據/值加載數據庫表。每個值和符號一行,即每天100 000行。

查詢1:

正如我想分析了所有的符號每日數據分割我的年,月,周,日的數據庫。

QUERY2:

但我也想通過讀數據長達24個月回每個符號的時間來分析一段時間內各個符號的趨勢/統計。

Query2沿着另一個維度(時間軸),我不想查詢針對query1優化的多個分區(y,m,w,d)。

你建議什麼樣的設計?

回答

0

每天100k行不算太多。你只創建一個分區一年。 但是,如果您還想通過僅在單個分區上工作來優化查詢性能,那麼我們假設您按月分區。

此外我們假設一個三節點集羣。所以你可能想要創建6張碎片的表格,每年總共會產生6 * 12個碎片。如果您配置了一個副本 - 6 * 12 * 2分片 - 這看起來不錯。

如果您在where子句中指定分區 - crate將自動僅喚醒這些碎片。但您仍然可以看到整個數據。

順便說一句:這裏有一個方便的鏈接按時間分區:https://crate.io/a/generated-columns-in-crate/