2012-07-27 17 views
5

Estoy escribiendo un código en el que estamos insertando 200,000 elementos en un índice de ElasticSearch.Obtener un recuento de elementos de índice con ElasticSearch

Si bien esto funciona bien, cuando obtenemos un recuento de elementos en el índice para verificar que todo ingresó, no obtenemos el mismo número. Sin embargo, si esperamos uno o dos segundos, el recuento es correcto.

Por lo tanto, ¿existe una forma programática en la que podamos obtener un recuento real de ElasticSearch sin tener que tener sleep o similar?

Respuesta

7

Los registros recién indexados se hacen visibles en los resultados de búsqueda solo después de la operación Refresh. Se llama automáticamente a Refresh con la frecuencia especificada en la configuración index.refresh_interval, que es 1s por defecto. Al escribir pruebas de búsqueda elástica, es habitual llamar a la actualización después de la indexación para asegurarse de que todos los registros indexados estén disponibles en las búsquedas. Sin embargo, las llamadas de actualización excesivas (después de cada registro, por ejemplo) en el código de producción pueden dificultar el rendimiento de indexación de búsqueda elástica.

Cuestiones relacionadas