一个分布式的RESTFUL风格的搜索和数据分析引擎
Elasticsearch is a highly scalable open-source full-text search and analytics engine. It allows you to store, search, and analyze big volumes of data quickly and in near real time. It is generally used as the underlying engine/technology that powers applications that have complex search features and requirements.
一个高度可扩展的开源全文搜索和分析引擎。它允许你近乎实时的快速存储、搜索和分析大量数据。它通常用作底层引擎/技术来为有着复杂搜索特性和需求的应用程序供能。
Here are a few sample use-cases that Elasticsearch could be used for:
这里列举了几个应用到Elasticsearch的简单用例:
You run an online web store where you allow your customers to search for products that you sell. In this case, you can use Elasticsearch to store your entire product catalog and inventory and provide search and autocomplete suggestions for them.
你运营一个允许用户搜索在售商品的在线商城。在该用例中,你可以使用Elasticsearch来存储你全部的商品品类和库存,并为你的客户提供搜索和自动补全搜索信息的推荐功能。
You want to collect log or transaction data and you want to analyze and mine this data to look for trends, statistics, summarizations, or anomalies. In this case, you can use Logstash (part of the Elasticsearch/Logstash/Kibana stack) to collect, aggregate, and parse your data, and then have Logstash feed this data into Elasticsearch. Once the data is in Elasticsearch, you can run searches and aggregations to mine any information that is of interest to you.
你想收集日志或业务数据,并且对其进行分析、挖掘数据中存在的市场趋势、统计信息、摘要信息或反常情况。在该用例中,你可以用Logstash (Elasticsearch/Logstash/Kibana库中的一部分)来收集、合计、分析这些数据,然后通过Logstash将这些数据注入Elasticsearch.一旦数据存于Elasticsearch,你就可以进行搜索和聚合来挖掘你感兴趣的信息。
You run a price alerting platform which allows price-savvy customers to specify a rule like "I am interested in buying a specific electronic gadget and I want to be notified if the price of gadget falls below $X from any vendor within the next month". In this case you can scrape vendor prices, push them into Elasticsearch and use its reverse-search (Percolator) capability to match price movements against customer queries and eventually push the alerts out to the customer once matches are found.
你运营一个价格提醒平台。它允许一些精打细算的顾客指定规则,如:“我有意购买一个特定的电子产品,我希望本月若有任一卖家将价格降至X元以下时,收到平台的通知。”在这个案例中,你将抓取所有卖家给出的价格,将它们存入Elasticsearch中,使用Elasticsearch的反向检索(过滤器)性能来匹配价格变动以应对用户的查询,一旦发现匹配结果时就给用户弹出提醒。
You have analytics/business-intelligence needs and want to quickly investigate, analyze, visualize, and ask ad-hoc questions on a lot of data (think millions or billions of records). In this case, you can use Elasticsearch to store your data and then use Kibana (part of the Elasticsearch/Logstash/Kibana stack) to build custom dashboards that can visualize aspects of your data that are important to you. Additionally, you can use the Elasticsearch aggregations functionality to perform complex business intelligence queries against your data.
你有一个分析学或商业情报类的需求,希望快速调研、分析、图像化展示,并基于大量数据寻求特设问题(试想成百上千万的数据记录)。在这个用例中,你可以用Elasticsearch来存储数据,用Kibana(Elasticsearch/Logstash/Kibana库中的一部分)来建立自定义仪表板以便直观展现对你很重要的那部分数据。除此之外,你可以用Elasticsearch 的集成功能依据你的数据来呈现复杂的商业情报查询功能。
For the rest of this tutorial, you will be guided through the process of getting Elasticsearch up and running, taking a peek inside it, and performing basic operations like indexing, searching, and modifying your data. At the end of this tutorial, you should have a good idea of what Elasticsearch is, how it works, and hopefully be inspired to see how you can use it to either build sophisticated search applications or to mine intelligence from your data.
本教程的剩余内容,将指引你分步安装Elasticsearch并运行,小觑其中构造,完成像索引、搜索、修改数据等基本操作。本教程的结尾处,你将对Elasticsearch是什么有更好的认知、了解它是怎样工作的。我们无比希望你能使用它建造更精确的搜索应用亦或挖掘出你数据中的价值。