Saltar al contenido

Encuentre valores distintos, no recuentos distintos en elasticsearch

Solución:

Utilice una agregación de términos en el color campo. Y debe prestar atención a cómo se analiza el campo en el que desea obtener valores distintos, lo que significa que debe asegurarse de no estar tokenizándolo durante la indexación; de lo contrario, cada entrada en la agregación será un término diferente que forma parte de el contenido del campo.

Si aún desea la tokenización Y usar el terms agregación que es posible que desee ver not_analyzed tipo de indexación para ese campo, y tal vez use campos múltiples.

Agregación de términos para automóviles:

GET /cars/transactions/_search?search_type=count
{
  "aggs": {
    "distinct_colors": {
      "terms": {
        "field": "color",
        "size": 1000
      }
    }
  }
}

Para actualizar la excelente respuesta de Andrei Stefan, debemos decir que el parámetro de consulta search_type=count ya no es compatible con Elasticsearch 5. La nueva forma de hacer esto es agregar "size" : 0 en el cuerpo como:

GET /cars/transactions/_search
{
  "size": 0,
  "aggs": {
    "distinct_colors": {
      "terms": {
        "field": "color",
        "size": 1000
      }
    }
  }
}

Personalmente, ambas respuestas me parecían arcanas y desesperadamente complejas cuando quería agregar varios filtros.

Para mí, lo que tenía sentido era ir a la pestaña Descubrir y aplicar los filtros que quería. Luego guardé mi búsqueda.

Luego, creé una nueva visualización de gráfico de barras usando mi búsqueda guardada. Luego modifiqué el eje X para usar la agregación de términos en función de mi campo de interés (en mi caso, nombres de usuario) y luego ordené por recuento. Asegúrese de que el tamaño sea algo grande, como 500.

Debería poder obtener los resultados en forma tabular debajo de su gráfico. Programación JSON simple y sin complejidad. Solo una serie de clics. Incluso puede guardar la visualización para más tarde.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *