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

时间:2016-08-04 18:20:19

标签: database cassandra cassandra-2.1

我是cassandra DB的初学者我想在cassandra中创建像oracle这样的独特键。

我搜索了很多网站,但无法得到相关答案。

是否可以使用cassandra创建唯一键?

1 个答案:

答案 0 :(得分:2)

在Cassandra中,表的PRIMARY KEY定义用于唯一性。例如:

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

此处,userid列是唯一标识符。当然,您也可以将多列作为PRIMARY KEY定义的一部分。但要记住一些事情:

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

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