常用es命令

常用Elasticsearch命令

es别名链接和删除

json 复制代码
POST /_aliases
{
  "actions": [
    {
      "add": {
        "index": "index",
        "alias": "alias"
      }
    },
    {
      "remove": {
        "index": "index",
        "alias": "alias"
      }
    }
  ]
}

其中,一个POST请求中的actions按顺序执行,这使得可以无缝切换或者更新索引的别名,或者批量操作。索引可以使用GET /_cat/aliases?v查看。

索引迁移

索引直接迁移

json 复制代码
POST _reindex?wait_for_completion=false
{
  "source": {
    "size": 5000,
    "remote": {
      "host": "http://es.com:80",
      "username": "elastic",
      "password": "123456"
    },
    "index": "原索引名"
  },
  "dest": {
    "index": "目标索引名"
  }
}

其中:

  1. POST _reindex?wait_for_completion=false用于重新索引文档。wait_for_completion=false是一个查询参数,表示这个操作是异步的,API调用会立即返回一个任务ID,你可以通过这个任务ID来查询操作的进度。查询方法为GET /_tasks/{task_id}
  2. "source"代表源索引的信息;"size"指定了每次批量获取的文档数量,这里为5000;"remote"包含了远程Elasticsearch集群的连接信息;"host"指定远程Elasticsearch集群的地址和端口;"username"和"password"提供用于连接远程Elasticsearch集群的用户名和密码;"index"指定原索引;"dest"指定目标索引。

在使用这个API时,确保你的Elasticsearch集群安全设置允许这种操作,并且你有权限访问源索引和目标索引。此外,如果目标索引已经存在,Elasticsearch默认会失败,除非你使用op_type=index参数来覆盖已有文档。

只复制索引参数

首先你需要使用GET /{index}/_mappingGET /{index}/_settings获取索引的映射信息和设置信息,其中记得在settings中剔除index.creation_date、index.uuid、index.version.created、index.version.upgraded、index.provided_name几个字段,这属于索引自动创建的,不能在创建新索引时使用,其样式可能为:

settings:

json 复制代码
{
  "test_index" : {
    "settings" : {
      "index" : {
        "number_of_shards" : "5",
        "number_of_replicas" : "1",
        "version" : { }
      }
    }
  }
}

mappings

json 复制代码
{
    "test_index": {
        "mappings": {
            "test_index": {
                "properties": {
                    "id": {
                        "type": "long"
                    },
                    "content": {
                        "type": "text",
                        "fields": {
                            "keyword": {
                                "type": "keyword",
                                "ignore_above": 256
                            }
                        }
                    }
                }
            }
        }
    }
}

其中最外层的test_index是你原索引的名字,需要去除,将settingsmappings放在最外层,再加一个PUT {index}命令就可以复制索引结参数了,即

json 复制代码
PUT  {index}
{
    "settings": {
        "index": {
            "number_of_shards": "5",
            "number_of_replicas": "1",
            "version": {

            }
        }
    },
    "mappings": {
        "{index}": {
            "properties": {
                "id": {
                    "type": "long"
                },
                "content": {
                    "type": "text",
                    "fields": {
                        "keyword": {
                            "type": "keyword",
                            "ignore_above": 256
                        }
                    }
                }
            }
        }
    }
}
相关推荐
2601_961946088 小时前
AI API 网关实战:从单 Key 管理到企业级多租户架构
大数据·人工智能·金融·架构·api·个人开发
大大大大晴天11 小时前
Flink CDC 深度解析:从原理到实践的全链路指南
大数据·flink
IT新视界11 小时前
Elasticsearch信创国产化替代
大数据·elasticsearch·搜索引擎
汇策研习社12 小时前
改良版ADX指标实战指南:告别传统ADX滞后、震荡误判难题
大数据·经验分享·金融·区块链·fastbull
SelectDB12 小时前
宽表元数据膨胀怎么解?Doris Segment V3 对比 Parquet、Lance
大数据·数据库·数据分析
隔窗听雨眠13 小时前
从追赶者到定义者:中国BI如何借助AI实现弯道超车
大数据·人工智能
cspttty13 小时前
二本软件工程专业好就业吗?毕业后能做哪些岗位
大数据·软件工程
智圣新创0113 小时前
高校全域治理决策效能升级 智圣新创决策中台落地实操与行业趋势研判
大数据·人工智能·物联网
Elasticsearch14 小时前
用 Elasticsearch 的 RRF 融合检索,把矿物鉴定准确率从 36% 拉到 92%
elasticsearch
Elasticsearch14 小时前
景枢:基于 Elastic AI Agent Builder 的多景区购票智能运维中枢技术解析
elasticsearch