开始
Elasticsearch 是一个可伸缩的、开源的、全文检索分析引擎。它可以让你快速和近乎实时地存储、搜索和分析大量的数据。一般用来作为基础引擎/技术,能使应用具有复杂的搜索特性和需求。
这里给出一些Elasticsearch 可以使用的情景:
你运行着一个网上商店,允许顾客搜索你售卖的产品。在这种情况下,你可以使用Elasticsearch 来存储所有的产品目录和库存,并提供搜索和自动补全功能。
你想要收集日志或者事务数据,并且你想要分析和挖掘这些数据来寻找一些趋势、统计、总结或异常现象。在这种情况下,你可以使用Logstash来收集、聚合和解析你的数据,然后让Logstash把数据放入到Elasticsearch中。一旦数据已经在Elasticsearch 里存在,你可以运行搜索和聚合来挖掘你感兴趣的信息。
你运行着一个价格告警平台,这个平台允许一个懂行的顾客来指定一个规则,比如指定这样一个规则:“我对一个特殊的电子器件有兴趣,如果下个月的某些时候,一些卖主那里的价格降至x美元,请通知我。”在这种情况下,你可以搜集某些卖主的价格,并把它存到Elasticsearch 中,对于顾客的查询使用颠倒-搜索能力来匹配价格浮动,并且一旦发现了匹配数据,就推送告警。
你有一个分析、商业-智能需要和想要在大量的数据(数百万或数十亿个记录)上快速地调查、分析、可视化和询问特殊的问题。在这种情况下,你可以使用Elasticsearch来存储你的数据,然后可以使用Kibana来构建一个普通的仪表盘,这个仪表盘可以把重要的数据进行可视化。此外,你可以使用Elasticsearch的聚合功能来执行复杂的商业智能查询。
在这篇手册的剩下部分,我将指导你获取Elasticsearch、运行Elasticsearch、看看它的内部结构和基本操作执行如索引、搜索、修改你的数据。在这个手册的最后,你应该对Elasticsearch 是什么以及它的工作原理有个清晰的认识,并激发你去思考怎么使用Elasticsearch 来构建一个复杂的搜索应用,或者从你的数据中挖掘信息。