2015-09-08 127 views
1

我們已經開始使用Mongodb version 2.6。當我們嘗試創建文本索引時,我們一直面臨發生的錯誤,它是:Mongodb 2.6索引錯誤 - 「索引太大而無法索引」

錯誤:「鍵太大而無法索引」。

我們做了一些搜索和發現:Starting from version 2.6, MongoDB will not create an index if the value of existing index field exceeds the index key limit.MongoDB - Indexing Limitations

我們需要建立在每個網頁的網站的文本內容的索引。

  • 我們如何使用Mongodb 2.6創建文本索引?
  • 我們應該回到以前的版本嗎?
+0

你真的想要一個索引在整個頁面內容(而不是例如全文索引)? –

+2

mongoDB將限制放在索引大小上,因爲索引存儲在RAM中,如果索引的總大小超過RAM大小,那麼您將面臨性能問題。因此,儘量減少索引的大小或在頁面內容上加上一些加密邏輯,然後將其保存爲索引 – codiacTushki

+0

@codiacTushki這是OP應該認真對待的一個公平點。 – Matt

回答

1

這是Mongo 2.6中默認設置的大小限制。試着開始你mongod過程中使用這個參數:

sudo mongod --setParameter failIndexKeyTooLong=false 

According to the documentation密鑰索引大小限制爲1024個字節。但用上面的參數覆蓋這個應該會幫助你。

+0

謝謝你的建議。我們試過了,但沒有奏效。 當我們開始用您的參數建立索引時,整個文本被跳過而沒有建立索引 – Ozge