2013-07-30 57 views
1

我目前遇到了集成ElasticSearch和MongoDB的問題。基本上我需要將一些Mongo文檔轉換爲與我的ElasticSearch查詢匹配的可搜索文檔。這部分是幸運的小事,照顧。我的問題是,我需要這個快。比網絡時間更快,我真的希望能夠索引大約100個文檔/秒,這對於Mongo網絡調用來說是不可能的。使用Pymongo捆綁讀取或緩存集合

我可以通過使用ElasticSearch的批量索引來加速很多,但這只是問題的一半。是否有任何方法來捆綁讀取或緩存集合(集合中的可管理部分,因爲此集合比我想保留在內存中的集合更大)來幫助加快速度?我無法真正找到任何關於此的文檔,所以如果您可以指向相關文檔,我認爲這是一個完全可以接受的答案。

我更喜歡使用Pymongo的解決方案,但我會非常樂意使用通過請求或類似方式直接與MongoDB對話的內容。有關如何緩解這種想法的任何想法?

回答

0

pymongo是線程安全的,因此您可以並行運行多個查詢。 (我假設你可以以某種方式分割文檔空間。)

如果處理結果需要在單個線程中發生,則將結果提供給本地隊列。