重新插入。您的创建语句应该是:
CREATE TABLE test (
provider_id UUID,
name text,
filename text,
timestamp timestamp,
is_deleted boolean,
PRIMARY KEY ((provider_id, filename), timestamp)
)
现在provider_id + filename是您的分区键,并为您的聚簇列添加时间戳。
组合分区键由provider_id
和filename
组成。 集群列timestamp
确定数据的集群顺序。通常,Cassandra将在同一节点上存储具有相同 provider_id
但在不同节点上具有不同filename
的列以及具有相同provider_id
和filename
的列 。
这意味着您现在可以查询你的数据是这样的:
SELECT * FROM test
WHERE provider_id = 1
AND filename = "test.txt"
AND timestamp >= '2016-01-01 00:00:00+0200' AND ts <= '2016-08-13 23:59:00+0200'
而对于可能的更新:
UPDATE test
SET name = "test-new"
WHERE provider_id = 1
AND filename = "test.txt"
AND timestamp >= '2016-01-01 00:00:00+0200' AND ts <= '2016-08-13 23:59:00+0200'
更多info
你想选择或更新? – xmas79