【问题标题】:Cassandra and IDs conceptCassandra 和 Ids 概念
【发布时间】:2016-06-17 10:22:53
【问题描述】:

能否请您澄清一下 cassandra 的 ID。

在关系数据库中使用带有自动增量生成的 id。 字段 id 连接到表映射、锁定。 据我所知,cassandra 使用 UUID 而不是 Id 您能否解释一下主要概念 UUID。为什么 cassandra 排除 id。 谢谢!

【问题讨论】:

标签: cassandra


【解决方案1】:

UUID 相对于自动递增整数的优势在于您可以分布式生成它们。当使用递增整数时,必须在某个地方有一个计数器,在生成新 ID 时必须始终查询该计数器。使用 UUID,您可以在集群中的任何位置生成一个新 ID 并立即使用它。

基本上,您可以将 UUID 视为大随机数。因此,即使两个节点不协调,也不太可能生成相同的 ID。

您似乎仍然应该熟悉 Cassandra 中键的概念。与关系数据库不同,Cassandra 中的键不仅用于生成记录的唯一标识,还用于准备数据查询。因此,cassandra 中的键通常不是 UUID……或者不是单独的 UUID。

【讨论】:

  • 谢谢。那么,关系数据库 - 主键自动递增 w3schools.com/sql/sql_autoincrement.asp cassandra 怎么样?是主键 UUID 吗?还是复合键 UUID + 某个字段?
  • 在 Cassandra 中,主键由分区键和列键组成。除了作为标识之外,它们还具有其他功能:如何在集群中分区和分布数据,以后可以搜索什么,以及您希望 Cassandra 按什么顺序返回数据。对于 Stackoverflow 上的帖子来说,正确地做这一切是很复杂的,实际上已经有非常好的教程。我建议您至少观看这门课程:academy.datastax.com/courses/ds201-cassandra-core-concepts
猜你喜欢
  • 1970-01-01
  • 2018-06-20
  • 1970-01-01
  • 2020-03-23
  • 2020-06-13
  • 1970-01-01
  • 1970-01-01
  • 2016-01-01
  • 1970-01-01
相关资源
最近更新 更多