2013-10-29 56 views
1

我是Elastic Search的新手。我需要實現一個系統,讓我可以在一天中持續獲取數據。我想使這個數據饋送可搜索,所以我使用ElasticSearch。ElasticSearch性能:連續讀取/寫入vs批量寫入

現在,我有兩種方法可以解決這個問題: 1)將feed中的數據存儲在mongo中。並定期將這些數據提供給ElasticSearch,讓我們每天說兩次。 2)直接將數據提供給ElasticSearch,這是連續的過程。同時ElasticSearch必須執行搜索查詢。

我期望每秒鐘來自數據饋送的大約20個條目的數量,以及ElasticSearch執行的每秒約2-3條查詢。

請指教。

回答

1

你能告訴我們更多關於你的集羣架構嗎?多少個節點?所有節點都有數據或網關節點? 通常我會說直接喂彈性搜索不應該是一個問題。彈性搜索每秒2-3次查詢並不多。

+0

我將使用單個節點開始。你認爲ES可以處理它自己的索引,同時提供查詢而不會影響性能? –

+0

當然,它不會像沒有在同一時間寫作一樣快,但問題是如果它太慢。我會說它會很快。你可以在你決定一個選項之前設置你的集羣並測試性能...... – MeiSign

+1

如果寫入速度可以達到每秒500-600,會發生什麼或者是一個優先選項。與讀取相同。 –

1

你應該優化你的索引結構和應用程序代碼吧:

  1. 每天創建單獨的索引碎片(你 應該通過試驗,根據您的硬件配置)
  2. 增加數量對於舊的 天指標,您應關閉它們或使用某些批處理(另一月指數)彙總爲大時期

我的測試20個inserts/second對elasticsearch來說不是一個很大的負載