2015-04-12 59 views
0

我閱讀了mongo官方網站上的分片文檔。 但是,我不能爲這些答案:分片集合的索引需要從分片鍵開始?

  1. 是否所有的分片集合的索引需要開始與片鍵?

  2. 如果我在分片集合的字段上需要TTL索引,並且TTL不支持複合索引,那麼在這種情況下我會做什麼? (現場!=片鍵)

回答

0
  1. 號你可以有一個分片收集任何索引。但是,不包含分片鍵的查詢將被髮送到全部分片。然後單個分片將利用任何現有的索引,並將其結果發送回mongos查詢路由器,查詢路由器將根據需要對結果進行排序,並將結果集發送回客戶端。請閱讀Routing Process in the MongoDB docs瞭解更多詳情。
  2. TTL刪除是在日期字段上運行的後臺進程。你的每個碎片都會產生後臺進程。所以你可以簡單地在你選擇的日期字段上創建TTL索引。每個單獨的分片將處理要刪除的文檔。