ElasticSearch(es)是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
感觉es和solr的性质应该是一样的,真心不是很了解他俩有什么差别。在网上找了几篇最它们俩的性能对比,大家可以看看。(请原谅我的渣英文,找的都是中文的文章)
http://simonlei.iteye.com/blog/1615600
http://sg552.iteye.com/blog/1561559
百度百科中可以找到es在windows环境下的安装 百度百科 我就不说了(主要是我也亲自试过所以不好评论)。
这里我主要说一下是在ubuntu环境下的搭建,其实特别简单,只需要卡卡卡几步就搞定。
这里我用的是 apt get 直接安装的 好处我感觉就是用的都是系统默认的路径,以后安装扩展插件之类的比较方便一点,当然也可以去官网下载相应的安装包自己安装。
wget -qO- https://packages.elasticsearch.org/GPG-KEY-elasticsearch | sudo apt-key add -
sudo add-apt-repository"deb http://packages.elasticsearch.org/elasticsearch/1.4/debian stable main"
sudo apt-getupdate&&sudoapt-getinstallelasticsearch
sudo update-rc.delasticsearchdefaults 95 10
sudo /etc/init.d/elasticsearchstart
启动完成后,访问http://localhost:9200/如果显示如下则表示安装成功
{
"status" : 200,
"name" : "Omen",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "1.4.5",
"build_hash" : "2aaf797f2a571dcb779a3b61180afe8390ab61f9",
"build_timestamp" : "2015-04-27T08:06:06Z",
"build_snapshot" : false,
"lucene_version" : "4.10.4"
},
"tagline" : "You Know, for Search"
}
下边安装的是比较实用的插件,当然不安装也没问题。
cd /usr/shaare/elasticsearch/bin #这个是apt-get安装以后的默认路径,手动安装的请根据自己的环境进行调整#
sudo ./plugin-installmobz/elasticsearch-head
sudo ./plugin-ielasticsearch/marvel/latest
这样访问 http://localhost:9200/_plugin/head/ 可以查看elasticsearch的信息
在elasticsearch中,index相当于数据库的database,tag相当于数据库的table。使用curl来进行客户端操作。
创建
curl -XPUT 'http://localhost:9200/twitter/user/1' -d '{ "name" : "Shay Banon" }'
#其中index为twitter tag:user id:1#
查看
curl -XGET 'http://localhost:9200/twitter/user/1?pretty=true'
检索
curl -XGET 'http://localhost:9200/twitter/tweet/_search?q=user:1&pretty=true'
删除
curl -XDELETE localhost:9200/twitter/user/1
这些知识基本操作,具体的和项目结合以及相关gem我还没有看。