目前我正在使用cassandra为我的功能用例存储数据(向用户显示时间序列和合并数据)。如果您正确设计数据模型(查询驱动)
,Cassandra非常擅长基本上,数据是通过Storm从RabbitMQ中获取并保存到Cassandra
Lambda架构只是大数据架构师和技术独立的设计模式,可以组合层:
Cassandra是一个可以用作服务层和数据库的数据库。批处理层:我也使用它作为我的分析目的也使用了spark(因为数据格式已经很好,就像时间序列一样,在cassandra中)
据我所知,需要考虑的一件事是在处理之前存储原始数据。您需要这样做才能恢复任何问题,基于人为(算法问题,PROD中的DROP TABLE,这种情况可能发生这种情况......)或未来使用或主要用于批量聚合
在这里,我面临一个选择:
目前我将其存储在cassandra中,但我考虑将原始数据存储在HDFS中,原因不同:原始数据是"死",使用cassandra令牌,使用资源(主要是磁盘空间)在cassandra集群中。
有人能帮助我做出这个选择吗?
答案 0 :(得分:2)
HDFS非常有意义。一些注意事项:
答案 1 :(得分:0)
hdfs更适合二进制文件。卡桑德拉是o.k.用于存储文件等的位置等,但只需要对纯文件进行建模,因此大多数人只是放弃了cassandra并抱怨它很糟糕。它仍然可以完成,如果你想这样做,有一些例子,如: https://academy.datastax.com/resources/datastax-reference-application-killrvideo
可能会帮助您入门。
此外,问题还有更多关于quora的内容,甚至http://www.mail-archive.com/user@cassandra.apache.org/这个问题已被问到很多时间。