2013-06-26 55 views
1

我正在使用Elastich Search和MongoDB開發應用程序。彈性搜索使用MongoDB oplog通過稱爲河流的組件對內容進行索引。重置MongoDB oplog

是否可以重置MongoDB oplog,以便所有以前的條目消失?

+2

根據MongoDB文檔(http://docs.mongodb.org/manual/core/capped-collections/#recommendations-and-restrictions),有一個可以工作的空白命令。這聽起來對我來說不太好,因爲oplog對複製至關重要。清空它可能會破壞你的輔助。我不熟悉河流,但是可以忽略比X更老的條目嗎? –

回答

1

如果您的應用程序要持續讀取oplog,它需要能夠以特定時間戳(ts)值開始的功能。如果沒有這種能力,如果應用程序(或mongod)因任何原因必須重新啓動,則必須重新處理它已經處理但仍在oplog中的所有oplog條目。如果應用程序具有以ts值開始的能力,那麼只需查詢oplog以獲取ts的最大值,並將其用作起點。