0
だが、私は以下のような文書を格納したいとしましょう:Elasticsearch - 列挙型のデータ型
{
"item_id": 1,
"item_price": 500,
"currency": "USD"
}
私は通貨フィールドはENUMのようになりたいので、私は次のように、値のセットを事前定義することができます:「USD」 、「GBP」、「EUR」のように...
は、私はまた、ハッシュマップのように、それぞれの値が整数に関連されることを希望するので、値のセットは次のようになります。
{ "USD":1, "GBP":2, "EUR":3 }
どのようにシェルこのフィールドをマップしますか?
よろしくお願いいたします。しかし、私は事前に通貨(文字列)のセットを定義することができますので、セットにない間違った通貨(例えば "USF")を入力するとelasticsearchは私の間違いを認識しますか?もう1つは、私が間違ってID "2"の "USD"を入力することができます。 – TVC
ESには型指定システムがあり、マッピングの種類を定義することはできますが、説明している種類のチェックは行いません。インデックス作成のコードが健全で一貫性のあるものであることを確認することは、あなた次第です。 unit-test it ;-) – Val
OK、このフィールドを 'string'型の代わりに' keyword'型にする利点は何ですか? – TVC