I Indexpositionen in Elasticsearch in jedem Punkt, wo hat diese Eigenschaften:Querying Elasticsearch mit Array von Werten
tags - array of strings eg. [ 'c++', 'java', 'python' ]
submitter_id - uuid
id - uuid
Auch ich habe Benutzer, der diese Eigenschaften hat:
tags - array of strings
following_ids - array of uuids
Was ich tun möchte ist query elasticsearch für Elemente, bei denen Tags mit Tags des Benutzers übereinstimmen oder submission_id ist eines der folgenden Elemente des Benutzers, auch i boost-Felder. Gerade jetzt i bilden die Abfrage wie diese
"should"=>[{"match"=>{"tags"=>{"query"=>"yoga", "boost"=>3}}}, {"match"=>{"tags"=>{"query"=>"yogic technique", "boost"=>3}}},
{"match"=>{"tags"=>{"query"=>"lag jaa gale", "boost"=>3}}}, {"match"=>{"tags"=>{"query"=>"jonita gandhiband", "boost"=>3}}}
{"match"=>{"submitter_id"=>"fc8b720f-a306-4849-8bc1-38fafae7c92b"}},
{"match"=>{"submitter_id"=>"c35ec42f-2df0-4870-89a4-9e59c9df04ea"}}]
Aber wenn der Benutzer eine Menge von Tags oder following_ids hat, ich würde bald in maximal Klauseln Limit laufen. Wie soll ich damit umgehen?