Ich bin sehr neu in ElasticSearch (Version 2.3.3) und das ist mein folgendes Format für die Daten.ElasticSearch insgesamt unterschiedliche Vorkommen über die gesamten Daten
{
"title": "Doc 1 title",
"year": "14",
"month": "06",
"sentences": [
{
"id": 1,
"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit",
"class": "Introduction",
"synth": "intr"
},
{
"id": 2,
"text": "Donec molestie pulvinar odio, ultricies dictum mi porttitor sit amet.",
"class": "Introduction",
"synth": "abstr"
},
{
"id": 3,
"text": "Aliquam id tristique diam. Suspendisse convallis convallis est ut condimentum.",
"class": "Main_Content",
"synth": "body"
},
{
"id": 4,
"text": "Nunc ornare eros at pretium faucibus. Praesent congue cursus aliquet.",
"class": "Main_Content",
"synth": "body"
},
{
"id": 5,
"text": "Integer pellentesque quam ut nulla dignissim hendrerit.",
"class": "Future_Work",
"synth": "ftr"
},
{
"id": 6,
"text": "Pellentesque faucibus vehicula diam.",
"class": "Bibliography",
"synth": "bio"
}
]
}
Und mehrere Dokumente wie doc1, doc2, ..., doc700.
Ich versuche, eine solche Abfrage zu generieren, dass ich die Gesamtzahl der Vorkommen von jeder anderen "Klasse" über meine gesamte Dokumentenmenge sortiert nach Jahr erhalten.
Also wäre das Ergebnis etwas ähnlich dem Folgenden.
{
"year" : "14",
"count" : [
{ "Introduction" : 1357 },
{ "Main_Content" : 1021 },
{ "Future_Work" : 490 },
{ "Bibliography" : 241 }
],
"year" : "15",
"count" : [
{ "Introduction" : 972 } ,
{ "Main_Content" : 712 },
{ "Future_Work" : 335 },
{ "Bibliography" : 81 }
]
}
Ist es möglich zu erreichen, was ich poste? Oder wäre es einfacher für jede "Klasse" zu machen?
Vielen Dank.
Ich habe wie Sie versucht Mapping haben vorgeschlagen, aber wenn die Abfrage ausgeführt ich { „type“: „aggregation_execution_exception“, „Grund“: „[verschachtelte] verschachtelt Pfad [Sätze] nicht verschachtelt ist“} – Mayhem
Könnten Sie Überprüfen Sie, ob das Mapping für den Index korrekt erstellt wurde. –
Ja, wenn ich -XGET/index/_mapping/type ausführe, erhält es das Mapping, obwohl ich sagen muss, dass die Daten, die ich in der Frage präsentierte, nicht die ganzen Daten sind. Ich versuche, den spezifischen Teil, der für die Abfrage wichtig ist, zuzuordnen, der Rest (den ich weggelassen habe) ist für die Abfrage nicht relevant und enthält keines der Felder, die ich suchen und zählen möchte. – Mayhem