美文网首页
Reindex真题1

Reindex真题1

作者: 秦汉邮侠 | 来源:发表于2020-06-21 09:21 被阅读0次

    题目

    reindex+ingest_pipeline,难点是其中有一个字段是数组,数组的内容大概如下: text: ' abcedf ds ' ' 123abc' ' abc123' ' cde123' } reindex的时候,需要去掉数组前后的空格,然后要新增一个field,fullname= firstname + lastname

    添加pipeline

    PUT _ingest/pipeline/ig2
    {
      "description": "",
      "processors": [
        {
          "set": {
            "field": "fullname",
            "value": "{{firstname}} {{lastname}}"
          },
          "foreach": {
            "field": "foo",
            "processor": {
              "trim": {
                "field": "_ingest._value"
              }
            }
          }
        }
      ]
    }
    

    测试pipeline

    POST _ingest/pipeline/ig2/_simulate
    {
      "docs": [
        {
          "_source": {
            "foo": [
              " adsa 123 ",
              " 21232 321"
            ],
            "firstname": "Li",
            "lastname": "xiaolong"
          }
        }
      ]
    }
    

    执行Reindex

    PUT test_1/_bulk
    {"index":{"_index":"test_1","_id":0}}
    {"foo":[" adsa 123 "," 21232 321"],"firstname":"Li","lastname":"xiaolong"}
    
    POST _reindex
    {
      "source": {
        "index": "test_1"
      },
      "dest": {
        "index": "test_2",
        "pipeline": "ig2"
      }
    }
    

    测试Reindex结果

    GET test_2/_search
    

    总结

    • Reindex可以使用pipeline或者script
    • pipeline的编写可以使用内置的processor,也可以直接使用脚本
    • ingest pipeline 优先使用内置的processor
    • 如果写脚本,使用"""三重双引号

    相关文章

      网友评论

          本文标题:Reindex真题1

          本文链接:https://www.haomeiwen.com/subject/xvunzhtx.html