una soporta segundo rapida por optimizar mas lentas lenta hacer español cuello cuantas consultas consulta como botella agilizar cassandra cassandra-2.0 datastax

soporta - Cómo obtener el número de filas en la tabla de Cassandra



optimizar consultas mysql explain (6)

Esta es una pregunta muy básica, pero en realidad me ha estado molestando por días. ¿Hay una buena manera de obtener el equivalente de un COUNT(*) de una tabla dada en Cassandra?

Voy a mover varios cientos de millones de filas en C * para algunas pruebas de carga y me gustaría obtener al menos un recuento de filas en algunos trabajos ETL de muestra antes de mover grandes cantidades de datos a través de la red.

La mejor idea que tengo es básicamente recorrer cada fila con Python e incrementar automáticamente un contador. ¿Hay una mejor manera de determinar (o incluso estimar) el tamaño de fila de una tabla C *? También busqué Datastax Ops Center para ver si puedo determinar el tamaño de la fila allí. Si puedes, no veo cómo es posible.

¿Alguien más necesitaba obtener un count(*) de una tabla en C *? Si es así, ¿cómo lo hiciste?


Para quienes usan el adaptador de componentes C # Linq, puede usar:

var t = new Table<T>(session); var count = t.Count().Execute();


Puede usar copy para evitar que el tiempo de espera de cassandra generalmente suceda en el recuento (*)

cqlsh -e "copy keyspace.table_name (first_partition_key_name) to ''/dev/null''" | sed -n 5p | sed ''s/ .*//''


Sí, puede usar COUNT(*) . Aquí está la documentation .

Una expresión SELECT utilizando COUNT (*) devuelve el número de filas que coinciden con la consulta. Alternativamente, puede usar COUNT (1) para obtener el mismo resultado.

Cuente el número de filas en la tabla de usuarios:

SELECT COUNT(*) FROM users;


También puede obtener algunas estimaciones de nodetool cfhistograms de nodetool cfhistograms si no necesita un recuento exacto (estos valores son estimaciones).

También puede usar chispa si está ejecutando DSE.


nodetool cfstats | grep -A 1000 KEYSPACE

Reemplace KEYSPACE para obtener detalles de todas las tablas en ese KEYSPACE


nodetool tablestats pueden ser muy útiles para obtener rápidamente estimaciones de filas (y otras estadísticas de tablas).

nodetool tablestats <keyspace.table> para una tabla específica