我在cassandra有一张表,结构就像这样
CREATE TABLE dmp.Table (
pid text PRIMARY KEY,
day_count map<text, int>,
first_seen map<text, timestamp>,
last_seen map<text, timestamp>,
usage_count map<text, int>
}
现在我尝试使用spark-cassandra驱动程序查询它,所以我可以在哪里获取数据块。 如果我有100行,我应该能够获得0-10行,然后是10-20,依此类推。
CassandraJavaRDD<CassandraRow> cassandraRDD = CassandraJavaUtil.javaFunctions(javaSparkContext).cassandraTable(keySpaceName, tableName);
我问这个问题,因为我的表中没有列可以使用IN子句查询以获取行范围。
答案 0 :(得分:1)
您可以添加自动递增ID coloumn - 请参阅我的 DataFrame-ified Zip With Index 解决方案。然后,您可以通过新创建的id
列进行查询:
SELECT ... WHERE id >= 0 and id < 10;
等