Parece que no puedo obtener una búsqueda facetada trabajando en búsqueda elástica

Parece que no puedo entender el QueryDSL para las facetas en la búsqueda elástica. A continuación se encuentran mi objeto de consulta y la asignación de mitags matriz. Estoy tratando de hacer que estos se coloquen en una navegación facetada basada en etiquetas. Cada "elemento" tendrá múltiples etiquetas asociadas en la matriz de etiquetas [No todos los elementos tendrán etiquetas. Algunos tendrán una matriz vacía.]. Cada etiqueta es un objeto con propiedades de identificación y etiqueta.

He probado el enfoque de faceta anidada y aparece el error "las etiquetas no están anidadas", así que lo intento a continuación. No recibo un error, pero no hay ningún objeto de facetas en el JSON de retorno. He estado usando esta página para obtener ayuda:http: //www.elasticsearch.org/guide/reference/api/search/facets/index.htm.

¿Alguien puede ayudarme a formatear esto correctamente y comprender la organización de estos? Agradezco cualquier ayuda!

// this is my query object
{
  "sort":{ "created_at":{ "order":"desc" } },
  "query":{
    "constant_score":{
      "filter":{
        "and":[
          { "missing":{ "field":"parent_id" } },
          { "missing":{ "field":"wall_id" } },
          { "term":{ "active":true } }
        ]  
      }
    }
  },
  "facets":{
    "tags":{ "terms":{ "field":"tags.tag" } }
  }
}


// this is the mapping for the tags array
"tags":{
  "type":"nested",
  "include_in_parent":true,
  "properties":{
    "id":{ "type":"integer" },
    "tag":{ "type":"string" }
  }
},

Respuestas a la pregunta(2)

Su respuesta a la pregunta