ES的学习
1.了解ES
ES即为了解决原生Lucene使用的不足,优化Lucene的调用方式,并实现了高可用的分布式集群的搜索方案。
其特点是
操作简单 不用那么繁琐配置,并且支持分布式,以JSON的格式来操作,以restfull风格来操作。
相关框架Solr
Solr 利用 Zookeeper 进行分布式管理,支持更多格式的数据(HTML/PDF/CSV),官方提供的功能更多在传统的搜索应用中表现好于 ES,但实时搜索效率低。
2.安装ES
① 下载ES安装包
官方下载地址:https://www.elastic.co/downloads/elasticsearch
② 运行ES
bin/elasticsearch.bat
③ 验证
访问:http://localhost:9200/
3.使用辅助管理工具Kibana5
① Kibana5.2.2下载地址:https://www.elastic.co/downloads/kibana
② 解压并编辑config/kibana.yml,设置elasticsearch.url的值为已启动的ES
③ 启动Kibana5 : bin\kibana.bat
④ 默认访问地址:http://localhost:5601
4.使用的常用命令
_index:索引库
_type:类型名
_id:一个唯一标识
1.添加数据:put _index/_type/_id
2.局部修改数据
POST crm/employee/1/_update
{
“doc”: {
“name”:“李狗狗”
}
}
3.查询所有的数据
GET _search
4.分页查询每页3条数据从索引为1开始查询
GET _search?size=6&from=1
5.模糊查询age为11的数据
GET crm/employee/_search?q=age:11
6.DSL的查询操作
GET crm/employee/_search
{
“query”: {
“match”: {
“name”: “狗”
}
}
}
- 分页查询出来数据并查询指定字段和通过price排序
GET shop/goods/_search
{
“query”: {
“match”: {“name”:“iphone”}
},
“from”: 1,
“size”: 5,
“_source”: [“id”, “name”, “type”,“price”],
“sort”: [{“price”: “desc”}]
}
5.javaAPI的操作
1.首先引入依赖
2.连接ES获取client对象方便操作
3.然后通过java代码简单操作ES4.批量添加的操作
6.分页的操作