搜尋

首頁  >  問答  >  主體

mongodb - 如何在shard環境中平衡unsharded collection

我們有一些資料量比較大的業務資料, 採用sharding的方式儲存. 這樣可以把資料打散到不同的機器.

我們也有一些日誌資料, 是按每個租戶一個collection, 做成cappped, 只保留一定量的數據, 用於後台跑一些批處理用. 每個collection的記錄數也不是很大, 用sharding的意義不大. 而且是capped collection也不能sharding

現在的問題是, 這樣的collection的數量還是挺多的. 如果都集中在一台伺服器, 那台伺服器的負載就會變大, 反而影響本來sharding在上面個的collection的讀寫.

有什麼辦法可以把這些capped collection 比較好的分散到各個shard server嗎?

比如:
Shard Svr1, Shard Svr2, Shard Svr3
log_1, log_2, log_3
log_4, log_5, log_6

迷茫迷茫2761 天前614

全部回覆(1)我來回復

  • 淡淡烟草味

    淡淡烟草味2017-04-25 09:06:34

    以 database 為單位,可以用 movePrimary 把不同 database 的 unsharded collection 分散開。

    回覆
    0
  • 取消回覆