{
"_id" : ObjectId("5069d68700a2934015000000"),
"port_name" : "CL1-A",
"metric" : 340,
"port_number" : "0",
"datetime" : ISODate("2012-09-30T13:44:00Z"),
"array_serial" : "12345"
}
每個陣列具有128個端口,而每個文件是該度量數據的一分鐘。似乎array_serial對於分片鍵來說不是一個好的選擇,因爲基數很低,也就是說,串行12345
的所有數據都必須保留在同一個分片上,而不是分成多個塊,對嗎?
這似乎是port_number
將允許適度的基數,但它會失敗查詢隔離,爲多個端口同一陣列上的一個單一的查詢將跨越多個碎片。我預計用戶不需要一次查詢超過4-8個端口。
答案是一個組合嗎?我應該使用一段日期時間,比如月份還是星期?