2017-05-29 2 views
0

Beim Lesen von verschachtelten Datentypen sagen sie, dass jedes verschachtelte Objekt als "separates verstecktes Dokument" gespeichert wird. Bedeutet dies, wenn ich fieldName1 als geschachtelten Typ erstellen. Die folgende Suche wird nicht mehr funktionieren?Elasticsearch verschachtelte Datentypen - Ist das verschachtelte Objekt noch im Originaldokument sichtbar?

GET _search 
{ 
    "query": { 
    "bool": { 
     "must": [ 
     { 
      "type": { 
      "value": "typeName" 
      } 
     }, 
     { 
      "match": { 
      "[email protected]": "keyword" 
      } 
     }, 
     { 
      "match": { 
      "fieldName1.#text": "foo" 
      } 
     } 
     ] 
    } 
    } 
} 

Derzeit habe ich eine Datenbank, aber keine verschachtelten Typen, möchte ich verschachtelte Abschnitte enthalten für FieldName1 insbesondere Suche zu verfeinern, dass „foo“ als Schlüsselwort, aber ich will nicht um die Funktionalität verlieren ich im Moment haben.

Jede Hilfe wird sehr geschätzt.

Antwort

1

Sobald Sie die Zuordnung von fieldName1-nested Ihre Abfrage ändern wird geändert werden müssen, um eine andere Syntax zu verwenden:

GET _search 
{ 
    "query": { 
    "bool": { 
     "must": [ 
     { 
      "type": { 
      "value": "typeName" 
      } 
     }, 
     { 
      "nested": { 
      "path": "fieldName1", 
      "query": { 
       "bool": { 
       "must": [ 
        { 
        "match": { 
         "[email protected]": "keyword" 
        } 
        }, 
        { 
        "match": { 
         "fieldName1.#text": "foo" 
        } 
        } 
       ] 
       } 
      } 
      } 
     } 
     ] 
    } 
    } 
} 

Die Quelldokumente, die die verschachtelten fieldName1 Daten enthalten noch zurückgegeben werden.

+0

Vielen Dank! Wenn ich also richtig verstehe, werden Dokumente, wenn ich meine Suche nicht ändere, immer noch die verschachtelten fieldName1-Daten enthalten. Wenn ich die Suche verfeinern möchte, kann ich dann "geschachtelt" verwenden: {"Pfad": ... Abfrage? – Jim

+0

ja, das ist richtig – Val

Verwandte Themen