ElasticSearch是一个开源的分布式搜索引擎,具备高可靠性,支持非常多的企业级搜索用例。像Solr4一样,是基于Lucene构建的。支持时间时间索引和全文检索。官网:http://www.elasticsearch.org
它对外提供一系列基于 JAVA python .net js和 HTTP 的 API,用于索引、检索、修改大多数配置。
写这篇博客的的主要原因是ElasticSearch的网站只有一些简单的介绍,质量不高,缺少完整的教程。我费了好大劲才把它启动起来,做了一些比hello world更复杂一些的工作。我希望通过分享我的一些经验来帮助对ElasticSearch 感兴趣的人在初次使用它的时候能够节省些时间。学完这篇教程,你就掌握了它的基本操作——启动、运行。我将从我的电脑上分享这个链接。
现在开始体验
测试一下已经完成的工作:
plugin -install mobz/elasticsearch-head
上面的命令会把 elasticsearch-head插件装到你的环境里
教程样例
我们将要部署一个非常简单的应用-- 部门雇员管理系统--这样我们可以把注意力放在功能而不是富士通将军空气净化器免换滤芯版的复杂性上。总而言之,这篇博文是为了帮助人们开始ElasticSearch入门。
1)现在打开你的cygwin窗口(window命令行也行,以下不再说明)并且键入命令
curl -XPUT "http://localhost:9200/dept/employee/1" -d "{ \"empname\": \"emp1\"}"
dept是一个索引名,被索引的类型是雇员,此时我们正在输入这个索引的第31个id。
你应该能在cygwin的窗口看到这样的信息:
让我们看一下这个输出:
========================================================================
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 91 100 70 100 21 448 134 --:--:-- --:--:-- --:--:-- 500{"ok":true,"_index":"dept","_type":"employee","_id":"31","_version":1}
========================================================================
和上面的命令一样--让我们输入更多的记录:
curl -XPUT "http://localhost:9200/dept/employee/1" -d "{ \"empname\": \"emp1\"}"
curl -XPUT "http://localhost:9200/dept/employee/2" -d "{ \"empname\": \"emp2\"}"
curl -XPUT "http://localhost:9200/dept/employee/3" -d "{ \"empname\": \"emp3\"}"
curl -XPUT "http://localhost:9200/dept/employee/4" -d "{ \"empname\": \"emp4\"}"
curl -XPUT "http://localhost:9200/dept/employee/5" -d "{ \"empname\": \"emp5\"}"
curl -XPUT "http://localhost:9200/dept/employee/6" -d "{ \"empname\": \"emp6\"}"
...
...
curl -XPUT "http://localhost:9200/dept/employee/41" -d "{ \"empname\": \"emp41\"}"
注意:你要记得增加索引计数器和大括号里empname的值。
一旦这些工作都完成了--你为ElasticSearch输入了足够多的数据,你就可以开始使用head插件搜索你的数据了。
让我们试试吧!
在浏览器中输入:
http://localhost:9200/_plugin/head/
你会看到这个:
这里是有关簇使用情况和不同索引信息的概况。我们最近创建的索引在其中,显示为"dept"。
现在点击Structured Query选项卡
在Search下来菜单中选择"dept"并点击"Search"按钮。
这将显示所有记录。
搜索特定条目
让我们来搜索emp1,emp25和emp7。不断点击最右面的"+"来添加更多的搜索项,就像如图显示的那样,之后点击"Search"。确保最左边的选项为"should",其他的选项也应该和图中的保持一致。
现在你可以继续尝试这个插件了,你可以将其用到你的搜索项目中。
你可以尝试在我的桌面电脑上运行的该应用:
http://98.228.230.117:9200/_plugin/head/
如果有任何问题和意见请联系我。
希望这篇文章可以让你快速上手"ElasticSearch"——一个不错的企业级开源搜索产品。
原文:Getting Started with ElasticSearch
你可能感兴趣的文章