Cassandra和汇总数据

时间:2017-11-17 15:38:16

标签: cassandra kylin

我们有一个“遗留的”基于SQL Server的应用程序,用于保存OLTP数据(销售):

  • OLTP数据结构非常复杂
  • 我们仍然必须将其作为报告来源
  • 关于OLTP结构的报告非常慢
  • 所以我们准备并保持实际的“OLAP” - 视图,比如每天的销售额,每个视图实际上是MS SQL数据库中的一个表

主要问题:当我们需要新视图时,需要花费大量时间来扫描所有现有的OLTP数据。

现在我们想迁移到Cassandra,如果我们使用相同的方法来实现相同的目标,或者:

  • 我们可以更好地使用像Spark / Kylin这样的工具,他们可以做这样的事情吗?
  • 可能会以某种方式改变方法吗?

1 个答案:

答案 0 :(得分:2)

这可能不是您想要寻找的答案。但是,我只是想与cassandra和聚合数据分享我们的经验。在我们的项目中,我们需要从世界各地的服务器收集数据并相应地执行聚合。一些度量标准是每个服务器每个小时,每个地理区域等的消息。因此,一旦新数据进入,它将自动启动批处理以执行聚合或将数据插入多个表/视图。我们使用apache-spark作为处理引擎,此外,我们还根据特定用例使用cassandra中的一些概念,例如materialized viewsecondary indexcustom trigger。设计数据模型的一个重点是忘记NF,基本上,我们在NoSQL中一般不需要这个。

简而言之,我可以说从传统数据库迁移到NoSQL数据库最初可能会很麻烦。但最终的结果在性能和可用性方面非常令人满意。