安装和配置

http://lxw1234.com/archives/2018/08/926.htm 单机es集群
配置

  • cluster.name: chenshun 集群名字
  • node.name: node-chenshun-1 集群节点描述
  • path.data: /Users/chenshun/es/es6/elasticsearch-6.6.2.1/data 节点存储数据
  • path.logs: /Users/chenshun/es/es6/elasticsearch-6.6.2.1/logs 日志
  • http.port: 9201 对外暴露的http端口
  • transport.tcp.port: 9301 内部通讯的端口
  • discovery.zen.ping.unicast.hosts: [“127.0.0.1:9301”, “127.0.0.1:9302”,”127.0.0.1:9303”] 启动集群

5.3.0 集群安装

公共ES集群 192.168.250.28 , 192.168.250.29 , 192.168.250.30

基础接口

  • GET _cat/health?v 查看集群健康状况
  • GET _cat/nodes?v 节点的情况
  • GET _cat/indices 列出所有的索引
  • yellow open collect-info YJWSuafxT1CwjjF3DUWjDQ 5 1 19 0 211.7kb 211.7kb
  • yellow open book jZ0o9KqaRbG6Lmabgba2vw 5 1 3 0 22.1kb 22.1kb
  • yellow open .kibana SqhURfBAQiWstTKDNPyhZg 1 1 4 1 21.2kb 21.2kb
  • yellow open user-info-20190524 ttnZDn18R6mpzk4rvcehJQ 5 1 7 0 37.8kb 37.8kb
  1. GET /collect-info/_search 查询一个具体的索引,匹配所有的document
  2. {
  3. "query": {
  4. "match_all": {}
  5. },
  6. "from": 2,//从第几个开始,默认是0
  7. "size": 1//指定搜索的数据量
  8. }
  9. 搜索文档并排序
  10. GET /collect-info/_search
  11. {
  12. "query": {
  13. "match_all": {}
  14. },
  15. "from": 2,
  16. "size": 2,
  17. "sort": [
  18. {
  19. "duration": { //指定排序的field
  20. "order": asc 递增还是递减
  21. }
  22. }
  23. ]
  24. }
  25. 搜索指定字段
  26. GET /collect-info/_search
  27. {
  28. "query": {
  29. "match_all": {}
  30. },
  31. "_source": ["traceId","date”] //通过这里去指定,_source仅包含这些字段
  32. }

精确查询

  1. GET /collect-info/_search
  2. {
  3. "query": {"match": {
  4. "traceId": "76c08c9edf6b4559a82f14061035dac6"
  5. }}
  6. }
  7. 使用match指定具体的查询字段
  8. Match 精确匹配使用
  9. Match_all 匹配全部
  10. Match_phrase 短语匹配
  11. Match_phrase_prefix 短语前缀匹配
  12. multi_match 多个匹配

聚合

  1. GET /collect-info/_search
  2. {
  3. "size": 0,
  4. "aggs": {
  5. "total": { //指定本次聚合的名字
  6. "terms": {
  7. "field": type.keyword 使用的key
  8. }
  9. }
  10. }
  11. }

时间日期聚合

  1. GET /collect-info/_search
  2. {
  3. "size": 0,
  4. "aggs": {
  5. "test_timer": {
  6. "date_histogram": {
  7. "field": "date",
  8. "interval": "day"
  9. }
  10. }
  11. }
  12. }

时间区域聚合

  1. https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-daterange-aggregation.html 2个日期做聚合
  2. GET /collect-info/_search
  3. {
  4. "size": 0,
  5. "aggs": {
  6. "range": {
  7. "date_range": {
  8. "field": "date",
  9. "ranges": [
  10. {
  11. "from": "now-5d/d",
  12. "to": "now"
  13. }
  14. ]
  15. }
  16. }
  17. }
  18. }
  19. 几天前到现在做一次聚合操作