2.x から 5.x に移行しています。次のようにインデックスに値を追加しています。
indexInto (indexName / indexType) id someKey source foo
ただし、フィールドごとにすべての値をフェッチすることもできます。
def getValues(tag: String) ={
client execute {
search(indexName / indexType) query ("_field_names", tag) aggregations (termsAggregation( "agg") field tag size 1)
}
しかし、私はこの例外を受けています:
RemoteTransportException[[8vWOLB2][172.17.0.5:9300][インデックス:データ/読み取り/検索[フェーズ/クエリ]]]; ネストされた: IllegalArgumentException[デフォルトでは、フィールドデータはテキスト フィールドで無効になっています。[my_tag] で fielddata=true を設定して、転置インデックスを元に戻してメモリに fielddata をロードします。ただし、これはかなりのメモリを使用する可能性があることに注意してください。
ここkeyword
に示すように使用する可能性があると考えられますが、フィールドは事前に知られていない (ユーザーから送信された) ため、垂直マッピングを使用できません