En la terminología de Cassandra, lo que es TimeUUID?
Pregunta
En la terminología Cassandra, lo que es TimeUUID
y cuándo se utiliza?
Solución
TimeUUID es uno de los seis implementaciones concretas de la clase abstracta AbstractType .
Para ColumnFamilies usted tiene la posibilidad de especificar un atributo llamado CompareWith. (SuperColumns tienen un atributo CompareSubcolumnsWith similar).
Los valores válidos para este atributo son clases que implementa el AbstractType clase abstracta (por ejemplo. TimeUUID). El atributo CompareWith dice Cassandra cómo ordenar las columnas para las operaciones de corte.
Si está utilizando Java y el uso de Cassandra con TimeUUID Yo recomendaría leer esta sección de la cassandra Preguntas .
Otros consejos
TimeUUID es un azar identificador único global. 16 bytes.
presentación hex Muestra: a4a70900-24e1-11df-8924-001ff3591711
http://en.wikipedia.org/wiki/Universally_Unique_Identifier
Puede servir como una clave principal en términos de base de datos relacional o cuando se necesita para almacenar una lista de valores en virtud de alguna clave.
Por ejemplo visita este ejemplo gorjeo de fuente abierta basado en cassandra:
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í usuario se le asigna una clave única a4a70900-24e1-11df-8924-001ff3591711 que se utiliza para referirse al usuario desde otros lugares.
para indicar una "fila" única en un ColumnFamily