我们有大量来自存储在 Cassandra 中的各种网站的用户交互数据,例如 cookie、页面访问、广告查看、广告点击等,我们希望对其进行报告。我们当前的 Cassandra 架构支持基本的报告和查询。但是,我们也希望构建大型查询,这些查询通常涉及大型列族(包含数百万行)上的联接。
什么方法最适合这个?一种可能性是将数据提取到关系数据库(如 mySQL)并在那里进行数据挖掘。替代方法可能是尝试使用带有 hive 或 pig 的 hadoop 来为此目的运行 map reduce 查询?我必须承认我对后者的经验为零。
任何人都经历过一种与另一种的性能差异?您是否会在实时 Cassandra 生产实例或备份副本上运行 map reduce 查询以防止查询负载影响写入性能?