我一直在尝试在 Cassandra 中对数据进行建模,并试图根据日期过滤数据,正如这里关于 SO 的答案所给出的那样,这里的第二个答案是不使用 allow filter。
这是我目前的架构,
CREATE TABLE Banking.BankData(acctID TEXT,
email TEXT,
transactionDate Date ,
transactionAmount double ,
balance DOUBLE,
currentTime timestamp ,
PRIMARY KEY((acctID, transactionDate), currentTime )
WITH CLUSTERING ORDER BY (currentTime DESC);
现在已经插入了一个数据
INSERT INTO banking.BankData(acctID, email, transactionDate, transactionAmount, balance, currentTime) values ('11', 'alpitanand20@gmail.com','2013-04-03',10010, 10010, toTimestamp(now()));
现在,当我尝试查询时,例如
SELECT * FROM banking.BankData WHERE acctID = '11' AND transactionDate > '2012-04-03';
它说我允许过滤,但是在上面提到的链接中,情况并非如此。最后的要求是按年、月、周等获取数据,这就是为什么要按天对它进行分区,但日期范围查询不起作用。有什么改造建议还是我做错了什么?谢谢