在 Cassandra 术语中,TimeUUID 是什么?
题
在 Cassandra 术语中,什么是 TimeUUID
什么时候使用它?
解决方案
对于 ColumnFamilies,您可以指定一个名为 CompareWith 的属性。(SuperColumns 具有类似的 CompareSubcolumnsWith 属性)。
该属性的有效值是实现抽象类 AbstractType 的类(例如时间UUID)。CompareWith 属性告诉 Cassandra 如何对切片操作的列进行排序。
如果您使用 Java 并将 cassandra 与 TimeUUID 一起使用,我建议您阅读 cassandra 常见问题解答的这一部分.
其他提示
TimeUUID是随机全局唯一标识符。 16个字节。
样品六角介绍:a4a70900-24e1-11df-8924-001ff3591711
请参阅 http://en.wikipedia.org/wiki/Universally_Unique_Identifier
它可以充当一个主键在关系数据库的术语或当需要存储在某些关键值的列表。
例如检查基于卡桑德拉此开源的Twitter示例:
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',
},
}
下面用户分配a4a70900-24e1-11df-8924-001ff3591711一个唯一的密钥,其用于指从其他地方的用户。
,以指示在一个的ColumnFamily
独特的 “行”不隶属于 StackOverflow