0

我正在尝试将两个具有相同数据的表链接起来,如下所示:http: //outworkers.com/blog/post/a-series-on-cassandra-part-1-getting-rid-of-the-sql-心理

我的第二个表包含我要查询的数据,例如:

foo (
  id text,
  time timestamp,
  a int,
  b int,
  c int,
  d int,
  PRIMARY KEY (time, id)
) WITH CLUSTERING ORDER BY (time DESC, id ASC)

所以这里我想通过时间戳或id查询。现在 a,b,c,d 是应该是唯一的项目,即 PRIMARY KEY(a, b, c, d)。为此,我创建了第一个表:

bar (
  id text,
  time timestamp,
  a int,
  b int,
  c int,
  d int,
  PRIMARY KEY (a, b, c, d)
)

问题是,在插入期间,id 和 time 可能会改变,但 a、b、c、d 将保持不变。现在,我希望按照博文中提到的一致性做一些事情。我面临的问题是,如果我尝试插入一个相同的项目(a, b, c, d), bar 会愉快地更新相应的行,但 foo 创建一个新条目。我将如何删除 foo 中的旧条目或更新 foo 之类的 bar ???

4

1 回答 1

2

根据Cassandra 文档

UPDATE 无法更新行的主键字段的值

这是幻像删除查询的示例:https ://github.com/outworkers/phantom/wiki/Querying#delete-queries

于 2016-05-22T16:29:06.757 回答