2017-08-03 32 views
1

我使用ElasticSearch從超過1000萬條記錄中進行搜索,大多數記錄包含1到25個單詞。我想從中檢索數據,因爲我試圖從源字段獲取數據,所以我現在使用的方法對於大數據檢索速度非常緩慢。我想要一個可以使這個過程更快的方法。我可以自由地使用其他數據庫或ElasticSearch。任何人都可以提出一些好的想法和例子嗎?Elasticsearch在源域中對大量數據檢索性能下降

我試過在谷歌搜索解決方案,我發現一個解決方案是分頁,我已經應用它,只要有可能,但分頁不是一個選項,當我想在一個查詢中檢索很多(5000+)點擊。

在此先感謝。

+0

你正在運行什麼類型的查詢?什麼是你的拓撲結構?你在使用集羣模式嗎? – aclokay

+0

您可以通過以下方式來搜索您的搜索:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-profile.html – MartinSchulze

回答

0

使用scroll

雖然搜索請求返回一個「頁」結果的嘗試,滾動 API可用於從一個單一的搜索檢索大量結果(甚至全部 結果)請求,與您在 中使用傳統數據庫上的遊標的方式大致相同。

+0

在分頁模式下,我只使用它。但是我現在想要立即檢索整個結果。我也嘗試使用滾動循環,但這也很慢。 – Callisto

+0

我不明白,你使用分頁模式還是滾動?正如你可以閱讀滾動可以使用檢索'事件所有結果' – aclokay

+0

我已經完成使用滾動分頁。現在我想要一次檢索所有數據。沒有分頁,沒有滾動,因爲我想將這些數據處理到我的應用程序中並顯示給客戶端。根據我的知識,使用源字段檢索數據會使其變慢。 – Callisto