Ich habe ein Array von Artikeln in einer MongoDB-Datenbank, die in Elasticsearch indiziert ist. Jeder Artikel in MongoDB enthält eine Reihe von Autorennamen wie: ['Michael Jordan', '...']. Jeder Artikel wird dann in Es indiziert.Wie soll ich eine Post_Filter-Abfrage so formatieren, dass sie einer Zeichenfolge innerhalb einer Zeichenfolge in Elasticsearch entspricht?
In Es habe ich Aggregation von Autor arbeiten, aber ich möchte auch ein post_filter anwenden, um Ergebnisse nach Autor zu filtern. Wie sollte eine post_filter-Abfrage dafür ausgelegt sein?
Es Schema (kann geändert werden):
{
authors: ['Michael Jordan', 'Kobe Bryant'],
authorsString: 'Michael Jordan;Kobe Bryant;'
}
Dies ist ein Beispiel Abfrage vor dem post_filter Anwendung:
{
...
aggs: {
authors: {
terms: {
field: 'authorsArray.keyword',
},
},
},
post_filter: {},
}
Wenn ich will, Artikel, von denen zu finden, zumindest einer der Autoren ist "Michael Jordan", wie benutze ich post_filter?
Was ist die Zuordnung von Autoren? - Können Sie es bitte zeigen? –