0
超える集約私のようにマッピングしてインデックスを持っている -弾性検索(2.4) - 検索と配列
GET /sampledesc/desc/_mapping
{
"sampledesc": {
"mappings": {
"desc": {
"properties": {
"labels": {
"type": "string",
"index": "not_analyzed"
},
"tags": {
"type": "string",
"index": "not_analyzed"
},
"user_id": {
"type": "long"
}
}
}
}
}
}
私はそれにいくつかのデータを追加 -
PUT /sampledesc/desc/1
{
"user_id": 1,
"tags": ["tag1", "tag2", "tag3"],
"labels": ["label1","label2"]
}
PUT /sampledesc/desc/2
{
"user_id": 2,
"tags": ["tag2","tag3",],
"labels": ["label2","label4"]
}
PUT /sampledesc/desc/3
{
"user_id": 3,
"tags": ["tag7"],
"labels": ["label1","label4"]
}
私はこのデータを照会しますこれらのルール:
- タグのリストを指定したすべてのユーザーを検索します。
- これらのユーザーの場合は、ラベルを数でグループ化します。
たとえば、tag2とtag3の両方を持つユーザーにクエリを行い、ラベルを並べ替え順序でグループ化します。 3人のユーザーのサンプルデータでは、私の結果はlabel2 = 2; label1 = 1, label4 = 1
になります。