介紹
Elasticsearch是一個高度可擴展的開源全文搜索和分析引擎,它容許你快速,近實時地存儲,搜索和分析大量數據,它一般用做底層引擎/技術,爲具備複雜搜索功能和要求的應用程序提供支持。segmentfault
如下是Elasticsearch可用於的一些示例用例:工具
- 你運行在線網上商店,容許你的客戶搜索你銷售的產品,在這種狀況下,你可使用Elasticsearch存儲整個產品目錄和庫存,併爲它們提供搜索和自動填充建議。
- 你但願收集日誌或事務數據,而且但願分析和挖掘此數據以查找趨勢,統計信息,摘要或異常,在這種狀況下,你可使用Logstash(Elasticsearch/Logstash/Kibana stack的一部分)來收集,聚合和解析數據,而後讓Logstash將此數據提供給Elasticsearch。一旦數據在Elasticsearch中,你就能夠運行搜索和聚合來挖掘你感興趣的任何信息。
- 你運行價格警報平臺,容許精通價格的客戶指定一條規則,例如「我有興趣購買特定的電子產品,若是小工具的價格在下個月內從任何供應商降至X美圓如下,我但願收到通知」。在這種狀況下,你能夠抓取供應商價格,將其推入Elasticsearch並使用其反向搜索(Percolator)功能來匹配價格變更與客戶查詢,並最終在發現匹配後將提醒推送給客戶。
- 你有分析/商業情報的需求,並但願快速調查,分析,可視化並詢問有關大量數據的特定問題(想一想數百萬或數十億條記錄),在這種狀況下,你可使用Elasticsearch存儲數據,而後使用Kibana(Elasticsearch/Logstash/Kibana stack的一部分)構建自定義儀表盤,以即可視化對你來講重要的數據方面。此外,你可使用Elasticsearch聚合功能針對你的數據執行復雜的商業智能查詢。
在本教程的其他部分中,將引導你完成啓動和運行Elasticsearch,查看其中的內容以及執行索引,搜索和修改數據等基本操做的過程。在本教程結束時,你應該很好地瞭解Elasticsearch是什麼,它是如何工做的,並但願可以從中獲得啓發,看看如何使用它來構建複雜的搜索應用程序或從數據中挖掘情報。日誌