あなたの問題は、フィールドにアナライザーを定義せずにelasticsearchを使用している場合、elasticsearchはデフォルトで標準アナライザーを使用することです。標準アナライザはコンテンツを小文字にします。
問題を解決するには、カスタムアナライザを定義するか、インデックス時にコンテンツを小文字にしないアナライザを使用する必要があります。
私は、標準的なものよりも、別のアナライザを使用する方法を紹介します:
{
"mappings":{
"yourIndex":{
"properties":{
"theFieldWithYourID":{
"analyzer":"whitespace"
}
}
}
}
}
ここにあなたのマッピングでは、あなたがしたいフィールドのための別のアナライザを定義します。ホワイトスペースアナライザは、コンテンツを小文字ません。White space analyser documentation
EDIT: あなたがやりたいために、よりきれいな方法は、キーワードを使用して、それがインデックス化されるべきではないとされていることを、あなたのマッピングで指定することです:
PUT yourIndex/_mapping/yourDocType
{
"properties":{
"YourFireBaseID":{
"type":"keyword",
"index":"not_analyzed"
}
}
}
出典
2017-08-17 17:26:24
mel
elasticsearch文書のIDまたはelasticsearch文書のフィールドの値として、firebaseからIDをインデックスしますか? – mel
フィールドとしてインデックスを作成したいと考えています。 –