Ich habe einen Typ in elasticsearch, wo jeder Benutzer eine beliebige Anzahl von Posts posten kann (Felder sind "userid" und "post"). Jetzt brauche ich die Anzahl der Benutzer, die 0 post, 1 post, 2 Beiträge und so weiter .... wie mache ich das? Ich denke, es müssen einige verschachtelte Aggregationen implementiert werden, aber ich weiß nicht, wie ich vorgehen soll. Danke im Voraus !verschachtelte Anzahl Aggregationen in elasticsearch
Antwort
können Sie script
in Aggregation verwenden:
POST index_name/type_name/_search
{
"aggs": {
"group By Post Count": {
"terms": {
"script" : "doc['post'].size()"
}
}
}
}
Stellen Sie sicher, you enable scriptig
Hope this Ihnen hilft.
keine Entschuldigung, es hat nicht funktioniert! –
Welchen Fehler bekommst du ??? Oder gibt es nichts zurück? – Richa
Es wird kein Fehler zurückgegeben, aber die erwarteten Ergebnisse werden nicht zurückgegeben. –
Der beste Weg, dies zu tun, ist ein separates Feld hinzufügen, um die Anzahl der Beiträge zu speichern.
Skripte sind nicht zu effizient (Werte werden jedes Mal neu bewertet, wenn eine Abfrage ausgeführt wird) und Sie erhalten den Wert richtig, was Abfragen und Aggregationen sehr schnell macht. Natürlich müssen Sie sicherstellen, dass Sie diese Anzahl jedes Mal aktualisieren, wenn Sie das Dokument aktualisieren.
Ok! Danke mbudnik –
- 1. ElasticSearch - Aggregationen ohne Bucketing
- 2. Elasticsearch Unter Aggregationen Fehler
- 3. Verknüpfung von reverse_nested-Aggregationen in Elasticsearch
- 4. Elasticsearch: Aggregationen an verschachtelten Objekten
- 5. ElasticSearch - Unterschied zwischen Sub-Aggregationen und Pipeline-Aggregationen
- 6. ElasticSearch Filtern von Aggregationen aus Array-Feld
- 7. Dynamische ElasticSearch-Vorlage für verschachtelte
- 8. Eindeutige Anzahl von Begriffen Aggregationen
- 9. Kann ElasticSearch nur für Aggregationen verwendet werden?
- 10. Elasticsearch Aggregationen nach Stunden, die doppelte Stunden
- 11. Elasticsearch NEST-Client mit verschachtelten Aggregationen
- 12. elasticsearch - Äquivalent von "Facetten" "statistisch" für Aggregationen
- 13. Elasticsearch: Aggregat verschachtelte Objekte
- 14. Statistiken Aggregationen in algolia
- 15. Elasticsearch: Auf Werte von Buckets in Aggregationen zugreifen
- 16. Elasticsearch QueryParsingException Anzahl Abfrage
- 17. Elasticsearch Standardzuordnung verschachtelte Felder
- 18. Elasticsearch bedingte/verschachtelte Sortierung
- 19. Elasticsearch: Multi-Match-Abfrage für verschachtelte Felder
- 20. Elasticsearch: Wie skaliert man Aggregationen auf Ihre Anfrage und Filter?
- 21. Finden Union oder Kreuzung von Buckets mit elasticsearch Aggregationen
- 22. Elasticsearch Abfrage mit verschachtelten Aggregationen aus dem Speicher verursacht
- 23. Aggregationen für innere Treffer
- 24. Verschachtelte SQL wählen Elasticsearch mit
- 25. Elasticsearch Anzahl der Elemente ändern, wenn mit Filter und minScore
- 26. Komplexe Aggregationen in SQL
- 27. Aggregieren Sie nur verschachtelte verschachtelte Objektwerte in ElasticSearch
- 28. elasticsearch Anzahl zurückgegebener Facetten
- 29. Elasticsearch: Analysator auf verschachtelte Elementen
- 30. ElasticSearch - .NET NEST API erstellen mehrere Aggregationen mit Objektinitialisierung API scheint eine falsche Anfrage erstellen
Bitte teilen Sie die Zuordnung Ihres Index. 'GET/index/type/_mapping' – Richa
Es wäre wahrscheinlich hilfreich, wenn Sie Ihr Mapping und ein oder zwei Beispieldokumente geteilt hätten. Auch welche Art von Abfrage Sie derzeit haben. – Val
{ "ESIndex": { "Mappings": { "user_posts": { "Eigenschaften": { "post": { "type": "string" }, "Benutzer-ID": { "type": "long" } } } } } } –