代码之家  ›  专栏  ›  技术社区  ›  user3812269

如何使用cassandra数据库创建唯一密钥

  •  2
  • user3812269  · 技术社区  · 8 年前

    我是cassandra DB的初学者,我想在cassandra中创建类似oracle的唯一密钥。

    我搜索了很多网站,但找不到相关的答案。

    可以使用cassandra创建唯一密钥吗?

    1 回复  |  直到 8 年前
        1
  •  2
  •   Luke Tillman    8 年前

    PRIMARY KEY 表的定义用于唯一性。例如:

    CREATE TABLE users (
      userid uuid,
      firstname text,
      lastname text,
      email text,
      created_date timestamp,
      PRIMARY KEY (userid)
    );
    

    在这里 userid 列是唯一标识符。当然,您可以将多个列作为 主钥匙 定义。但有几件事要记住:

    • 主键列在Cassandra中还有其他含义(除了唯一性之外)。您将需要了解分区键和群集列,以及Cassandra如何使用它来组织群集和磁盘上的数据。
    • Cassandra没有约束或强制约束(例如,没有外键)
    • Cassandra不会在写入之前进行读取(除非您使用轻量级事务功能),因此在执行 INSERT 或一个 UPDATE 功能等同(即“upsert”),并将覆盖已经存在的数据

    如果您正在Oracle中寻找类似“唯一约束”或“唯一索引”的功能,则在Cassandra中找不到它。中提供了一个简单的数据建模示例 the CQL docs 如果您刚刚开始学习Cassandra,我还建议您查看它所链接的数据建模课程。祝你好运