Elasticsearch mapping紹介

2141 ワード

一、紹介
mapping:indexのtypeに対して自動的または手動で確立されたデータ構造と関連構成.
ps:mysqlのテーブル構造に少し相当します
  • はesに直接データを挿入し、esは自動的にインデックスを確立し、typeと対応するmapping
  • を確立する.
  • mappingではfieldごとのデータ型
  • が自動的に定義される.
  • の異なるデータ型(例えばtextとdate)は、exact value、full text
  • である可能性があります.
  • exact valueは、逆インデックスを作成するとき、分詞するとき、値全体をキーワードとして逆インデックスに作成します.full textは、様々な処理、分詞、normaliztion(時態変換、同義語変換、大文字小文字変換)を経て、逆インデックスに
  • が確立されます.
  • exact valueとfull textタイプのfieldが決定し、1つの検索が来たときにexact value fieldやfull text fieldを検索する行為も異なり、逆インデックスを作成する行為と一致します.例えばexact value検索の場合、直接値全体でマッチングし、full text query stringを行い、分詞やnormalizationを行い、インデックスを逆組みして
  • を検索する.
  • はesのdynamic mappingを使用して、自動的にmappingを確立させ、データ型の自動設定を含む.インデックス動作、分詞器などを含むデータ型を含むindexとtypeのmappingを事前に手動で作成し、自分で各fieldを設定することもできます.

  • mappingとは、indexのtypeのメタデータであり、各typeには独自のmappingがあり、データ型を決定し、インデックスを逆配列する行為、検索を行う行為である.
    二、mappingの核心のデータ型
    string
    byteshortintegerlong
    float,double
    boolean
    date

    三、dynamic mapping
    dynamic mappingでは、fieldが入力した値に基づいてfieldのタイプが自動的に決定されます.たとえば、次のようにします.
    true or false   --> boolean
    123     --> long
    123.45      --> double
    2017-01-01  --> date
    "hello world"   --> string/text

    四、mappingの表示
    GET /index/_mapping/type