對不起,如果我問了一個愚蠢的問題,但我找不出 解決方案。 我有存儲在mongodb中的數據,並且使用richardwilly的插件將集合映射到es 索引。然而,我的幾個索引 被搞砸了(由於其中並非我期望看到的所有數據都是 (它仍然在mongodb中))。我試圖在虛擬 數據上創建一個虛擬索引,我期望在重新索引之後,我現在將在 es中看到這些數據。一旦索引已被刪除並重新創建,Elasticsearch不會自動提取現有的mongoDB數據
這個問題似乎是蒙戈河上OPLOG工作和 之後我刪除索引,將下一首新文檔 後我想自動看到其他的數千份文件MongoDB中到 現在可見在es。但是,我只看到刪除並重新創建索引後插入的文檔 。其他 1000個文檔在mongo中仍然可見,但不在es中。
我做了一個小實驗,我看到如果我實際上重新插入了文檔,它們在elasticsearch中可見(如果索引爲 ,則允許它們全部處於允許狀態)。你可以告訴我如何我可以使mongodb中的 數據在es重新創建索引後顯示,而不必 必須刪除並重新插入,因爲我不能這樣做。我需要重新播放 oplog還是有另一種方法,你可以建議這樣的 我可以得到這些數據到ES而不刪除並重新插入?
謝謝!
不,只是重新創建這條河似乎並沒有從mongodb中批量加載數據。我認爲從mongodb獲取現有數據的唯一方法就是全部通過oplog。我在0.20.1,所以讓我知道你是否找到了不同的東西。 – coreyt
由於索引仍然完好無損,因此他不需要批量加載數據。重新創建河流不會影響存儲在索引中的數據。 –