我从卡桑德拉开始。我使用cql 2.0,我想用主键auto_increment创建表。我在一个节点上使用 cassandra。
问问题
2897 次
1 回答
6
Cassandra 没有您通常在 RDBMS 中找到的任何类型的密钥自动递增功能。跨节点的协调成本太高,无法使其成为有价值的功能。
通常,只要您在 RDBMS 中使用自动递增序列,就应该使用UUID 。客户可以在保证唯一性的情况下相互独立地创建它们(如果您正确使用它们)。如果您希望能够按创建时间对密钥进行排序(假设您的客户端具有同步时钟),则可以使用 TimeUUID。
你说你只使用一个节点集群。如果您不打算将集群扩展为大于 1 个节点,那么我建议您使用不同的数据库。Cassandra 牺牲了许多传统的数据库特性,使其能够很好地分布在一组机器上。当您只运行一个单节点集群时,您将失去 RDMBS 的所有优秀功能,而不会获得运行多节点 Cassandra 集群的任何好处。
于 2013-06-03T00:09:11.463 回答