In Cassandra terminology, what is TimeUUID
and when is it used?
TimeUUID is a random global unique identifier. 16 bytes.
Sample hex presentation: a4a70900-24e1-11df-8924-001ff3591711
See http://en.wikipedia.org/wiki/Universally_Unique_Identifier
It may serve as a primary key in terms of relational database or when you need to store a list of values under some key.
For example check this open source twitter example based on 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',
},
}
Here user is assigned a unique key a4a70900-24e1-11df-8924-001ff3591711 which is used to refer to the user from other places.