2016-06-20 6 views
0

Solrスキーマでは、検索クエリに役立つフィールドのインデックスをtrue/falseに定義しています。ElasticSearchのインデックスフィールド

ElasticSearchで同じ機能を実現する方法。私は "_index"と呼ばれるマッピングがあることを知っていますが、その機能については不明です。

誰もがこれを手伝ってくれますか?

答えて

0

mapppingを定義するときは、 "index"属性を使用できますが、ブール値ではありません。 3つの値のいずれかを保持できます。弾性ドキュメントに記載されているとおり:

インデックス属性は、文字列のインデックス方法を制御します。 の3つの値のいずれかを含むことができます。最初に文字列を分析し、それにインデックスを付けます。つまり、このフィールドをフルテキストとして索引付けします。 not_analyzed :このフィールドはインデックスであるため、検索可能ですが、指定されたとおりに正確に値をインデックスします。それを分析しないでください。 なし :このフィールドにはまったくインデックスを作成しないでください。このフィールドは検索できません。 文字列フィールドのindexのデフォルト値が解析されます。私たちは正確な値としてフィールドをマップする場合、我々はそれがnot_analyzedに設定する必要があります。

使用量は次のとおりです。詳細について

"field_name": { 
    "type":  "string", 
    "index": "not_analyzed" 
} 
+0

感謝を。つまり、属性 "_index"には次の3つの値があります。 1)。分析 - これはフィールドの部分一致を行い、フィールドは検索クエリで検索可能になります。 2)。 not_analyzed - これはフィールド値と完全に一致し、フィールドは検索クエリで検索可能になります。 3).no - このフィールドは検索クエリで検索できません。 –

関連する問題