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

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