Ich habe 2 Indizes in meinem Elasticsearch-Setup.Wie führe ich eine negative Abfrage in ES durch?
- index_a
- index_b
index_a
hat ein Feld location
und haben etwa 1000 Dokumente, bei denen als index_b
ein Feld city
und haben etwa 600 Dokumente hat.
Ich möchte herausfinden, alle locations
von index_a
, die nicht in der city
Feld in index_b
sind. Welche Abfrage sollte ich machen, um das oben genannte zu erreichen?
Sie führen zwei Abfragen aus (wählen Sie alle aus index_b aus und führen Sie dann die Suche auf index_a durch). Elasticsearch ist nicht in der Lage, zwei Indizes in einer einzigen Abfrage zu "verbinden" und verwendet lieber denormalisierte Daten, ** oder ** verwendet "verschachtelte" oder Eltern-Kind-Beziehungen. –
Wie @AndreiStefan bereits erwähnt hat, könnte dies auf Anwendungsebene besser gehandhabt werden. – JVXR
http://stackoverflow.com/questions/29799207/is-it-possible-to-compare-two-fields-from-different-types-on-a-query-dsl – CodeNotFound