Cassandra数据建模 - 选择大表中的行子集以进行批处理Spark处理

时间:2017-02-22 17:07:00

标签: cassandra data-modeling

我正在开发一个项目,我们将大量结构化原始数据摄取到Cassandra表中,然后使用Spark将其转换为目标模式。

由于我们的原始数据表变得非常大,我们希望分批处理它。这意味着Spark必须查看我们的原始数据表以识别尚未处理的行(通过分区键),然后将这些行的子集加载到Spark中。

对Cassandra不熟悉我现在想知道如何实现这一点。使用Spark,我可以非常有效地加载原始数据密钥,并将它们与转换表中的密钥进行比较,以识别子集。但是从原始数据表中加载这些行的子集的最佳策略是什么。

这是一个例子。如果我的架构如下所示:

CREATE TABLE raw_data (
    dataset_id text PRIMARY KEY,
    some_json_data text
);

...如果我的表格中有dataset_ids 1,2,3,4,5,并且知道我现在需要使用ID 4,5来处理行,那么我怎样才能有效地选择那些行知道列表在实践中,ids可能相当长?

0 个答案:

没有答案