cassandra timeuuid

En la terminología de Cassandra, ¿qué es TimeUUID?



timestamp cassandra (3)

En la terminología de Cassandra, ¿qué es TimeUUID y cuándo se usa?


TimeUUID es un identificador único global aleatorio. 16 bytes.

Ejemplo de presentación hexadecimal: a4a70900-24e1-11df-8924-001ff3591711

Ver http://en.wikipedia.org/wiki/Universally_Unique_Identifier

Puede servir como una clave principal en términos de base de datos relacional o cuando necesita almacenar una lista de valores bajo alguna clave.

Por ejemplo, verifique este ejemplo de código abierto de Twitter basado en cassandra:

http://twissandra.com/

http://github.com/ericflo/twissandra

User = { ''a4a70900-24e1-11df-8924-001ff3591711'': { ''id'': ''a4a70900-24e1-11df-8924-001ff3591711'', ''username'': ''ericflo'', ''password'': ''****'', }, } Username = { ''ericflo'': { ''id'': ''a4a70900-24e1-11df-8924-001ff3591711'', }, } Friends = { ''a4a70900-24e1-11df-8924-001ff3591711'': { # friend id: timestamp of when the friendship was added ''10cf667c-24e2-11df-8924-001ff3591711'': ''1267413962580791'', ''343d5db2-24e2-11df-8924-001ff3591711'': ''1267413990076949'', ''3f22b5f6-24e2-11df-8924-001ff3591711'': ''1267414008133277'', }, }

Aquí al usuario se le asigna una clave única a4a70900-24e1-11df-8924-001ff3591711 que se usa para referirse al usuario desde otros lugares.


para indicar una "fila" única en una familia de columnas


TimeUUID es una de las seis implementaciones concretas de la clase abstracta AbstractType .

Para ColumnFamilies tiene la posibilidad de especificar un atributo llamado CompareWith. (SuperColumns tiene un atributo CompareSubcolumnsWith similar).

Los valores válidos para este atributo son clases que implementan la clase abstracta AbstractType (por ejemplo, TimeUUID). El atributo CompareWith le dice a Cassandra cómo ordenar las columnas para las operaciones de corte.

Si está utilizando Java y está usando cassandra con TimeUUID, le recomiendo que lea esta sección de las Preguntas frecuentes de cassandra .