Elasticsearch索引(index)、映射(mapping)等相关的创建

创建索引、映射

// 请求方式 /索引名称
PUT /saas_product_stock_test

{
  // 索引设置,并设置主分片和副本分片个数
  "settings": {
    "index": {
      "number_of_shards": "16",
      "number_of_replicas": "0"
    }
  },
  // 映射,注意映射类型为strict
  "mappings": {
    "_doc": {
      "dynamic": "strict",
      "properties": {
        "update_time": {
          "format": "yyyy-MM-dd HH:mm:ss",
          "type": "date"
        },
        "create_time": {
          "format": "yyyy-MM-dd HH:mm:ss",
          "type": "date"
        },
        "stock_amount": {
          "type": "float"
        },
        "organ_sign": {
          "type": "keyword"
        },
        "available_amount": {
          "type": "float"
        },
        "product_code": {
          "type": "keyword"
        }
      }
    }
  }
}

关于映射类型的说明,至于选择哪一种看具体需求,一般来说业务改动频繁的,建议使用动态映射:

  • 动态映射(dynamic:true):动态添加新的字段(或缺省)。
  • 静态映射(dynamic:false):忽略新的字段。在原有的映射基础上,当有新的字段时,不会主动的添加新的映射关系,只作为查询结果出现在查询中。
  • 严格模式(dynamic: strict):如果遇到新的字段,就抛出异常。

需要注意的是,如果该索引创建了索引模板,那么当你重建该索引并且需要调整映射字段时(比如删除了一些字段),就需要删除索引模板。具体原因请看:https://blog.csdn.net/qq_15003505/article/details/106716271

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章