2017-04-11 55 views
1

我創造了一個蒙哥指數:錯誤monogdb「ERRMSG」:「WiredTigerIndex ::插入:鑰匙太大,指數,遇事

db.table.createIndex({"chr" : 1, "Start" : 1, "End" : 1, "Ref" : 1, "Alt" : 1}) 

它運行了一段時間,並給出了一個錯誤信息:

error in monogdb "errmsg" : "WiredTigerIndex::insert: key too large to index, failing 

如何解決這個問題?

+0

嗨@ anop.perl,你可以添加一些細節?例如,是否已經填充了「表」集合? – danidemi

回答

2

在MongoDB中,由於2.6,索引項的總大小必須小於1024個字節。Documentation here

其他術語中,至少有一個文檔在您嘗試索引的某個字段中有很大的值。

對於像這樣的非常大的值來說,這不是一個好主意,因爲它會創建一個大的索引,與較小的索引相比效率較低,並且RAM需要更多空間,可以更好地用於MongoDB節點。

您可以使用:mongod --setParameter failIndexKeyTooLong=false

但它看起來不是一個好主意。如果你有一個大的文本索引,你應該考慮使用全文索引或者你可以使用散列索引。

+0

謝謝Maxime ...... –

+0

不客氣@ anop.perl。如果您認爲案件已結案,請驗證答案。 –