es Elasticsearch 索引格式修改

ES 的数据 索引修改步骤

第一步 :添加 bak 的index ,后续数据要导入到这个index上面,只需要指定特定冲突不符合要求的字段即可,但是有一点要注意,如果 要修改的index本身 已经被修正过了数据类型,那这次 修改的也还是要加上的,不然会丢失

curl   -XPUT "http://*:9200/logct-2018-01-24-bak" -d '
{
  "mappings" : {
      "events" : {
        "_all" : {
          "enabled" : false
        },
        "properties" : {
         "module" : {
              "type" : "keyword"
            },
            "platId" : {
              "type" : "keyword"
            },
            "productId" : {
              "type" : "keyword"
            },
            "project" : {
              "type" : "text",
              "fields" : {
                "keyword" : {
                  "type" : "keyword",
                  "ignore_above" : 256
                }
              }
            },
            "recordId" : {
              "type" : "keyword"
            },
            "sessionId" : {
              "type" : "keyword"
            }
        }
      }
    }
}'

第二部: reindex 重新导数据,这个可能会比较消耗资源

 curl   -H "Content-Type: application/json" -XPOST http://*:9200/_reindex\?pretty -d '
{
        "source" : {
                "index" : "logct-2018-01-24"
        },
        "dest" : {
                "index": "logct-2018-01-24-bak"
        }
}'

第三个: 添加alias,这样就不用修改 index,重新导数据的情况下,维持原来命名规则

curl -XPOST "http://****:9200/_aliases" -d '
{
    "actions" : [
        { "add" : { "index" : "logct-2018-01-24-bak", "alias" : "logct-2018-01-24" } }
    ]
}'

Leave a comment

Your email address will not be published.

*