elasticsearch常用命令

  1. 创建模板

    curl -X PUT "192.1.1.1:9200/_index_template/service-template?pretty" -H 'Content-Type: application/json' -d'
    {
    "index_patterns":[
    "service-*"
    ],
    "template":{
    "settings":{
    "number_of_shards":2,
    "number_of_replicas":1,
    "index.max_result_window":"10000"
    },
    "mappings":{
    "dynamic_templates": [
    {
    "strings_as_keywords": {
    "match_mapping_type": "string",
    "mapping": {
    "type": "keyword"
    }
    }
    }
    ],
    "properties":{
    "id":{
    "type":"keyword"
    },
    "value":{
    "type":"short"
    },
    "customerFields":{
    "type":"nested",
    "include_in_parent":true,
    "properties":{
    "fieldId":{
    "type":"keyword"
    },
    "type":{
    "type":"short"
    },
    "sort": {
    "type": "integer"
    }
    }
    },
    "remarks":{
    "type":"keyword"
    }
    }
    }
    }
    }'

  2. 查询模板

复制代码
curl -X GET "192.1.1.1:9200/_index_template/service-template?pretty"
  1. 删除模板

curl -X DELETE "192.1.1.1:9200/_index_template/service-template?pretty"

  1. 创建表
复制代码
curl -X PUT "192.1.1.1:9200/service-2025-02?pretty"
  1. 查询表
复制代码
curl -X GET "192.1.1.1:9200/service-2025-02/_mapping?pretty"
  1. 删除表
复制代码
curl -X DELETE "192.1.1.1:9200/service-2025-02/_search?pretty"
  1. 添加普通字段

    curl -X POST "192.1.1.1:9200/service-2025-01,service-2025-02/_mapping?pretty" -H 'Content-Type: application/json' -d'
    {
    "properties":{
    "remark": {
    "type": "integer"
    }
    }
    }'

  2. 添加嵌套字段

    curl -X POST "192.1.1.1:9200/service-2025-01,service-2025-02/_mapping?pretty" -H 'Content-Type: application/json' -d'
    {
    "properties":{
    "customerFields": {
    "type":"nested",
    "include_in_parent":true,
    "properties":{
    "sort":{
    "type":"integer"
    }
    }
    }
    }
    }'

9.查询表结构

复制代码
curl -X GET "192.1.1.1:9200/service-2025-02/_mapping?pretty"
  1. 给模板增加自动清理时间(高级属性)

    curl -X PUT "192.1.1.1:9200/_ilm/policy/service_polic?pretty" -H 'Content-Type: application/json' -d'
    {
    "policy": {
    "phases": {
    "delete": {
    "min_age": "30d",
    "actions": {
    "delete": {}
    }
    }
    }
    }
    }'

复制代码
11. 给模板增加setting(高级属性)
复制代码
curl -X PUT "192.1.1.1:9200/_index_template/service-template?pretty" -H 'Content-Type: application/json' -d'
{
  "index_patterns":[
    "service-*"
  ],
  "template":{
    "settings":{
      "number_of_shards":2,
      "number_of_replicas":1,
      "index.max_result_window":"10000",
      "index.lifecycle.name": "service_polic",
      "index.lifecycle.rollover_alias": "service_polic_alias",
      "index.refresh_interval": "2s",
      "index.translog.flush_threshold_size": "1gb",
      "index.translog.flush_threshold_period": "1h"
    },
    "mappings":{
      "dynamic_templates": [
                        {
                            "strings_as_keywords": {
                                "match_mapping_type": "string",
                                "mapping": {
                                    "type": "keyword"
                                }
                            }
                        }
                    ],
      "properties":{
        "id": {
          "type": "keyword"
        }
        ......
        ......
      }
    }
  }
}'
  1. 排序查询

    curl -X GET "192.1.1.1:9200/service-2025-02/_search?pretty" -H 'Content-Type: application/json' -d'
    {
    "size" : 2,
    "query" : {
    "query_string" : {
    "query" : "field:hello world"
    }
    },
    "sort":[
    {
    "creationTime":{
    "order":"asc"
    }
    }
    ]
    }'

14.分组查询

复制代码
curl -X GET "192.1.1.1:9200/service-2025-02/_search?pretty" -H 'Content-Type: application/json' -d' 
{
    "size": 2,
    "query": {
        "query_string": {
            "query": "field:hello world"
        }
    },
    "aggs": {
        "group_by_userId": {
            "terms": {
                "field": "userId",
                "size": 10
            }
        }
    },
    "sort": [
        {
            "creationTime": {
                "order": "asc"
            }
        }
    ]
}'
  1. 分组聚合查询

    curl -X GET "192.1.1.1:9200/service-2025-01/_search" -H 'Content-Type: application/json' -d'
    {
    "_source": ["timestamp","field1","field2","lost","userId"],
    "size": 10,
    "query": {
    "bool": {
    "must": [
    {
    "term": {
    "field1": "hello"
    }
    },
    {
    "term": {
    "field2": "world"
    }
    }
    ]
    }
    },
    "aggs": {
    "average_per_5_seconds": {
    "date_histogram": {
    "field": "timestamp",
    "fixed_interval": "5s",
    "min_doc_count": 0
    },
    "aggs": {
    "average_lost": {
    "avg": {
    "field": "lost",
    "missing": 0
    }
    }
    }
    }
    }
    }'

相关推荐
银发控、5 小时前
MySQL联合索引
数据库·mysql
予枫的编程笔记5 小时前
【MySQL修炼篇】从踩坑到精通:事务隔离级别的3大异常(脏读/幻读/不可重复读)解决方案
数据库·mysql·后端开发·数据库事务·事务隔离级别·rr级别·脏读幻读不可重复读
一起养小猫6 小时前
Flutter for OpenHarmony 实战:记账应用数据统计与可视化
开发语言·jvm·数据库·flutter·信息可视化·harmonyos
世界尽头与你6 小时前
(修复方案)CVE-2023-22047: Oracle PeopleSoft Enterprise PeopleTools 未授权访问漏洞
数据库·安全·oracle·渗透测试
韩立学长6 小时前
【开题答辩实录分享】以《智能大学宿舍管理系统的设计与实现》为例进行选题答辩实录分享
数据库·spring boot·后端
Henry Zhu1236 小时前
数据库(五):反规范化
数据库
Mr_Xuhhh7 小时前
MySQL函数详解:日期、字符串、数学及其他常用函数
java·数据库·sql
he___H8 小时前
Redis高级数据类型
数据库·redis·缓存
霖霖总总8 小时前
[小技巧60]深入解析 MySQL Online DDL:MySQL Online DDL、pt-osc 与 gh-ost 机制与最佳实践
数据库·mysql
爱学习的阿磊8 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python