Elasticsearch学习笔记
来源:互联网 发布:php 表单验证 数据库 编辑:程序博客网 时间:2024/06/06 12:33
初识Elasticsearch:
1 启动ES
su elasticsearch
/hadoop/elasticsearch-2.4.3/bin/elasticsearch -d
(注:若无账号则创建账号
创建用户:adduser elasticsearch
赋予可执行权限:chown -R elasticsearch /hadoop/elasticsearch-2.4.3
)
--查看进程
ps aux|grep elasticsearch
2 查看节点信息
curl 'http://127.0.0.1:9200/_cat/nodes?v'
3 查看全部索引
curl 'http://127.0.0.1:9200/_cat/indices?v'
4 创建索引
curl -XPUT 'http://127.0.0.1:9200/mytest?pretty'
--删除索引
curl -XDELETE 'http://127.0.0.1:9200/mytest?pretty'
5 插入数据
curl -XPUT 'http://127.0.0.1:9200/mytest/external/1?pretty' -d '{"name": "John Doe"}'
curl -XPUT 'http://127.0.0.1:9200/mytest/external/5?pretty' -d '{"name": "Tom"}'
curl -XPOST 'http://127.0.0.1:9200/mytest/external/1/_update?pretty' -d '{"doc": { "age": 20 }}'
curl -XPOST 'http://127.0.0.1:9200/mytest/external/2/_update?pretty' -d '{"doc": { "age": 25 }}'
curl -XPOST 'http://127.0.0.1:9200/mytest/external/3/_update?pretty' -d '{"doc": { "age": 30 }}'
6 删除
curl -XDELETE 'http://127.0.0.1:9200/mytest/external/2?pretty'
curl -XDELETE 'http://127.0.0.1:9200/mytest/external/_query?pretty' -d '
{
"query": { "match": { "name": "John" } }
}'
7 查询 match 是模糊查询 term 是精确查询
curl -XGET 'http://127.0.0.1:9200/mytest/external/1?pretty'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"from":"0","size":"6"}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"match":{"srcip":"221.176.67.103"}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"match":{"srcport":"0"}}}'
--模糊匹配
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"match_phrase":{"name":"名字是张三"}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"term":{"name":"名字是李四"}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":{"must":{"term":{"name":"名字是李四"}}}}}'
--精确匹配
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":
{
"must":{"term":{"name":"名"}},
"must":{"term":{"name":"字"}},
"must":{"term":{"name":"是"}},
"must":{"term":{"name":"李"}},
"must":{"term":{"name":"四"}}
}
}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":
{
"must":{"term":{"name":"名"}},
"must":{"term":{"name":"字"}},
"must":{"term":{"name":"是"}},
"must":{"term":{"name":"李"}}
}
}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":{"must_not":{"term":{"age":20}},"must":{"term":{"name":"张三"}}}}}'
8 多条件查询
curl -XGET 'http://127.0.0.1:9200/event/event/_search?pretty' -d '{"query": {"bool": {"should": [{ "match": { "sourceip": "221.176.67.10" }},{ "match": { "destip": "221.176.67.101" }}]}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query": {"bool": {"should": [{ "match": { "name": "名字是" }},{ "match": { "name": "张三" }}]}}}'
9 按时间查询
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"range":{"opentime":{"gte":"1495414800000"}}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"range":{"opentime":{"gte":"1495697415000","lte":"1495697415000"}}}}'
10 聚合
curl -XGET '172.16.10.74:9200/event/event/_search?pretty' -d'
{
"size" : 0,
"aggs": {
"sales": {
"date_histogram": {
"field": "opentime",
"interval": "month",
"format": "yyyy-MM-dd"
}
}
}
}
'
1 启动ES
su elasticsearch
/hadoop/elasticsearch-2.4.3/bin/elasticsearch -d
(注:若无账号则创建账号
创建用户:adduser elasticsearch
赋予可执行权限:chown -R elasticsearch /hadoop/elasticsearch-2.4.3
)
--查看进程
ps aux|grep elasticsearch
2 查看节点信息
curl 'http://127.0.0.1:9200/_cat/nodes?v'
3 查看全部索引
curl 'http://127.0.0.1:9200/_cat/indices?v'
4 创建索引
curl -XPUT 'http://127.0.0.1:9200/mytest?pretty'
--删除索引
curl -XDELETE 'http://127.0.0.1:9200/mytest?pretty'
5 插入数据
curl -XPUT 'http://127.0.0.1:9200/mytest/external/1?pretty' -d '{"name": "John Doe"}'
curl -XPUT 'http://127.0.0.1:9200/mytest/external/5?pretty' -d '{"name": "Tom"}'
curl -XPOST 'http://127.0.0.1:9200/mytest/external/1/_update?pretty' -d '{"doc": { "age": 20 }}'
curl -XPOST 'http://127.0.0.1:9200/mytest/external/2/_update?pretty' -d '{"doc": { "age": 25 }}'
curl -XPOST 'http://127.0.0.1:9200/mytest/external/3/_update?pretty' -d '{"doc": { "age": 30 }}'
6 删除
curl -XDELETE 'http://127.0.0.1:9200/mytest/external/2?pretty'
curl -XDELETE 'http://127.0.0.1:9200/mytest/external/_query?pretty' -d '
{
"query": { "match": { "name": "John" } }
}'
7 查询 match 是模糊查询 term 是精确查询
curl -XGET 'http://127.0.0.1:9200/mytest/external/1?pretty'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"from":"0","size":"6"}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"match":{"srcip":"221.176.67.103"}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"match":{"srcport":"0"}}}'
--模糊匹配
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"match_phrase":{"name":"名字是张三"}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"term":{"name":"名字是李四"}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":{"must":{"term":{"name":"名字是李四"}}}}}'
--精确匹配
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":
{
"must":{"term":{"name":"名"}},
"must":{"term":{"name":"字"}},
"must":{"term":{"name":"是"}},
"must":{"term":{"name":"李"}},
"must":{"term":{"name":"四"}}
}
}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":
{
"must":{"term":{"name":"名"}},
"must":{"term":{"name":"字"}},
"must":{"term":{"name":"是"}},
"must":{"term":{"name":"李"}}
}
}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"bool":{"must_not":{"term":{"age":20}},"must":{"term":{"name":"张三"}}}}}'
8 多条件查询
curl -XGET 'http://127.0.0.1:9200/event/event/_search?pretty' -d '{"query": {"bool": {"should": [{ "match": { "sourceip": "221.176.67.10" }},{ "match": { "destip": "221.176.67.101" }}]}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query": {"bool": {"should": [{ "match": { "name": "名字是" }},{ "match": { "name": "张三" }}]}}}'
9 按时间查询
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"range":{"opentime":{"gte":"1495414800000"}}}}'
curl -XGET 'http://127.0.0.1:9200/mytest/external/_search?pretty' -d '{"query":{"range":{"opentime":{"gte":"1495697415000","lte":"1495697415000"}}}}'
10 聚合
curl -XGET '172.16.10.74:9200/event/event/_search?pretty' -d'
{
"size" : 0,
"aggs": {
"sales": {
"date_histogram": {
"field": "opentime",
"interval": "month",
"format": "yyyy-MM-dd"
}
}
}
}
'
阅读全文
0 0
- ElasticSearch学习笔记
- Elasticsearch学习笔记
- ElasticSearch学习笔记
- ElasticSearch 学习笔记(1)
- Elasticsearch学习笔记(2)
- Elasticsearch学习笔记
- Elasticsearch学习笔记
- Elasticsearch 学习笔记
- ElasticSearch学习笔记
- ElasticSearch学习笔记
- elasticsearch学习笔记
- Elasticsearch 学习笔记
- ElasticSearch学习笔记
- Elasticsearch学习笔记:简介
- Elasticsearch的学习笔记
- elasticsearch学习笔记(一)
- Elasticsearch 入门学习笔记
- Elasticsearch 学习笔记
- 论文笔记之目标检测(2)-- GRP-DSOD
- [ Lucas定理 数位DP 容斥 ] 「2015 计蒜之道 复赛」360的产品试用体验
- android、ios、php之间AES加密解密
- java的hashMap的resize()
- Centos 7由于下载软件包信息失败,软件包选择被禁止
- Elasticsearch学习笔记
- 浅谈MySQL集群高可用架构
- 在Visual Code中启用virtualenv
- 12.10中兴通讯科技园研发大楼发生42岁工程师跳楼事件
- 百度面试200题
- C++产生两个(多个)不同的随机数
- 一次dns缓存引发的惨案
- 女程序媛与男程序猿的一天
- tomcat内存溢出