我正在研究 Cassandra Hadoop 集成 (MapReduce)。我们习惯于RandomPartitioner
插入数据以获得更快的写入速度。现在我们必须在 MapReduce 中从 Cassandra 读取该数据并对其执行一些计算。
从我们在 cassandra 中拥有的大量数据中,我们只想为特定的行键获取数据,但由于RandomPartitioner
- 代码中有一个断言,我们无法做到这一点。
谁能指导我如何根据 Cassandra 级别本身的行键过滤数据(我知道数据使用行键的哈希分布在各个区域)?
使用二级索引(仍然试图了解它们是如何工作的)会解决我的问题还是有其他解决方法?
我想使用 cassandra MR 来计算一些 KPI 的数据,这些数据连续存储在 cassandra 中。所以这里每次都从 cassandra 获取整个数据对我来说似乎是一种开销?我使用的 rowkey 就像 "(timestamp/60000)_otherid"; 此 CF 包含对存储在其他 CF 中的实际数据的行键的引用。因此,为了计算 KPI,我将工作一分钟并从其他 CF 获取数据并进行处理。