Cassandra数据库

时间:2016-06-20 19:05:51

标签: cassandra amazon-redshift spark-cassandra-connector amazon-kinesis-firehose

我们需要对Cassandra数据库执行分析和报告。

以下是我们到目前为止所确定的方法。

1)在cassandra上使用火花。

缺点:

  • 我们将大量使用聚合函数和cassandra作为 数据按行键分区。如果groupby行与dosent匹配 使用我们的行键然后性能会很差。

  • 用于显示报告的火花没有开箱即用的用户界面

  • 需要一个程序员(java / scala / python)来添加/修改未来 导致高维护成本的要求

2)将数据移至红移并在其上执行分析。

  • 这对于我们的聚合查询很有效,因为redshift是 柱状数据库。

  • 能够根据我们的分析查询指定排序和分发 在redshift中创建表时

  • 可供报告的用户合作伙伴

  • 支持adhoc查询的SQL(减少维护)

退款:

  • 我们需要将数据从cassandra移动到redshift。我们有 确定AWS Firehose为我们这样做。随着写作 cassandra我们也会写信给要写的firehose stream 为我们换红。
  • 参与redshift和Firehose的AWS成本。

到目前为止,我们倾向于红移。 我的假设是否有任何错误。? 有没有替代品?

1 个答案:

答案 0 :(得分:1)

Spark与Cassandra可能是更常见的选择。值得注意的两点是:a)你可以使用Spark在内存中缓存RDD 2)Spark SQL工作正常,你不需要使用Spark的编程语言。