Pregunta

Estamos buscando usar Cassandra para almacenar un flujo de información proveniente de varias fuentes.

Un problema que enfrentamos es la mejor manera de consultar entre dos fechas.

Por ejemplo, necesitaremos recuperar un objeto entre DateTime DT1 y DateTime DT2.

Actualmente estamos considerando la marca de tiempo UNIX creada como la clave que apunta al objeto real que usa get_key_range para consultar para recuperar?

Obviamente, esto no funcionaría si dos elementos tienen la misma marca de tiempo.

¿Es esta la mejor manera de hacer las tiendas de DateTime en NoSQL en general?

¿Fue útil?

Solución

Las filas de Cassandra pueden ser muy grandes, así que considere modelarlo como columnas en una fila en lugar de filas en un CF; Luego puede usar las operaciones de corte de columna, que son más rápidas que las rodajas de fila. Si no hay claves "naturales" asociadas con esto, entonces puede usar claves diarias o por hora como "2010/02/08 13:00".

De lo contrario, sí, usar consultas de rango (get_key_range está en desuso en 0.5; use get_range_slice) es su mejor opción.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top