利用kibana插件對Elasticsearch進行映射

映射(mapping)

映射是建立索引的時候,能夠預先定義字段的類型以及相關屬性python

Elasticsearch會根據JSON源數據的基礎類型去猜想你想要的字段映射。將輸入的數據變成可搜索的索引項。Mapping就是咱們本身定義字段的數據類型,同時告訴Elasticsearch如何索引數據以及是否能夠被搜索。app

 做用:會讓索引創建的更加細緻和完善分佈式

 類型:靜態映射和動態映射es5

內置類型

string類型: text,keyword(string類型在es5已經被棄用)spa

數字類型:long, integer, short, byte, double, floatcode

日期類型: dateorm

bool類型: booleanblog

binary類型: binary  索引

複雜類型: object ,nestedip

geo類型: point , geo-shape

專業類型: ip, competion

mapping 限制的type

 

 

建立mapping

 

PUT lagou
{
  "mappings": {
    "job":{
      "properties": {
        "title":{
          "type":"text"
        },
        "salary_min":{
          "type":"integer"
        },
        "city":{
          "type": "keyword"
        },
        "company":{
          "properties": {
            "name":{
              "type":"text"
            },
            "company_addr":{
              "type":"text"
            },
            "employee_count":{
              "type":"integer"
            }
          }
        },
        "publish_date":{
          "type":"date",
          "format": "yyyy-MM-dd"
        },
        "comments":{
          "type": "integer"
        }
      }
    }
  }
}

 




PUT lagou/job/1
#當類型不符合的時候他會嘗試去轉換類型,好比字符串的數字和數字類型,可是若是沒法轉換就會報錯。

{
  "title":"python分佈式爬蟲開發",
  "salary_min":15000,
  "city":"北京",
  "company":{
    "name":"百度",
    "company_addr":"北京市軟件園",
    "employee_count":50
  },
  "publish_date":"2017-4-16",
  "comments":15
}

 



#獲取映射

GET lagou/_mapping

GET lagou/_mapping/job  

GET _all/_mapping/job

 

#索引中的那個咱們創建好了某個字段的映射後,就沒法更改了

相關文章
相關標籤/搜索