• ES基础(四十三)Update by Query & Reindex


     

     

     

     

     

     

     

    课程demo

    DELETE blogs/
    
    # 写入文档
    PUT blogs/_doc/1
    {
      "content":"Hadoop is cool",
      "keyword":"hadoop"
    }
    
    # 查看 Mapping
    GET blogs/_mapping
    
    # 修改 Mapping,增加子字段,使用英文分词器
    PUT blogs/_mapping
    {
          "properties" : {
            "content" : {
              "type" : "text",
              "fields" : {
                "english" : {
                  "type" : "text",
                  "analyzer":"english"
                }
              }
            }
          }
        }
    
    
    # 写入文档
    PUT blogs/_doc/2
    {
      "content":"Elasticsearch rocks",
        "keyword":"elasticsearch"
    }
    
    # 查询新写入文档
    POST blogs/_search
    {
      "query": {
        "match": {
          "content.english": "Elasticsearch"
        }
      }
    
    }
    
    # 查询 Mapping 变更前写入的文档
    POST blogs/_search
    {
      "query": {
        "match": {
          "content.english": "Hadoop"
        }
      }
    }
    
    
    # Update所有文档
    POST blogs/_update_by_query
    {
    
    }
    
    # 查询之前写入的文档
    POST blogs/_search
    {
      "query": {
        "match": {
          "content.english": "Hadoop"
        }
      }
    }
    
    
    # 查询
    GET blogs/_mapping
    
    PUT blogs/_mapping
    {
            "properties" : {
            "content" : {
              "type" : "text",
              "fields" : {
                "english" : {
                  "type" : "text",
                  "analyzer" : "english"
                }
              }
            },
            "keyword" : {
              "type" : "keyword"
            }
          }
    }
    
    
    
    DELETE blogs_fix
    
    # 创建新的索引并且设定新的Mapping
    PUT blogs_fix/
    {
      "mappings": {
            "properties" : {
            "content" : {
              "type" : "text",
              "fields" : {
                "english" : {
                  "type" : "text",
                  "analyzer" : "english"
                }
              }
            },
            "keyword" : {
              "type" : "keyword"
            }
          }    
      }
    }
    
    # Reindx API
    POST  _reindex
    {
      "source": {
        "index": "blogs"
      },
      "dest": {
        "index": "blogs_fix"
      }
    }
    
    GET  blogs_fix/_doc/1
    
    # 测试 Term Aggregation
    POST blogs_fix/_search
    {
      "size": 0,
      "aggs": {
        "blog_keyword": {
          "terms": {
            "field": "keyword",
            "size": 10
          }
        }
      }
    }
    
    
    # Reindx API,version Type Internal
    POST  _reindex
    {
      "source": {
        "index": "blogs"
      },
      "dest": {
        "index": "blogs_fix",
        "version_type": "internal"
      }
    }
    
    # 文档版本号增加
    GET  blogs_fix/_doc/1
    
    # Reindx API,version Type Internal
    POST  _reindex
    {
      "source": {
        "index": "blogs"
      },
      "dest": {
        "index": "blogs_fix",
        "version_type": "external"
      }
    }
    
    
    # Reindx API,version Type Internal
    POST  _reindex
    {
      "source": {
        "index": "blogs"
      },
      "dest": {
        "index": "blogs_fix",
        "version_type": "external"
      },
      "conflicts": "proceed"
    }
    
    # Reindx API,version Type Internal
    POST  _reindex
    {
      "source": {
        "index": "blogs"
      },
      "dest": {
        "index": "blogs_fix",
        "op_type": "create"
      }
    }
    
    
    GET _tasks?detailed=true&actions=*reindex

    本文来自博客园,作者:秋华,转载请注明原文链接:https://www.cnblogs.com/qiu-hua/p/14197893.html

  • 相关阅读:
    vue基础指令了解
    django中间件和auth模块
    form组件及cookie和session
    ajax学习相关
    数据库优化查询相关
    Django ORM必会13条之外的查询方法
    Django ORM单表查询必会13条
    Django学习之路05
    Django学习之路04
    Django学习之路03
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/14197893.html
Copyright © 2020-2023  润新知