2016-11-22 89 views
4

我正在研究用于传感器数据和预测分析的大数据解决方案。 我是大数据新手,并且阅读了关于lambda架构的内容。 我曾考虑将Cassandra数据库与Hadoop一起使用。 Cassandra是一个高可用性和分区容忍数据库,Hadoop hdfs是用于大型分析作业的文件系统。具有cassanda和hadoop的大数据lambda体系结构

如果我从物联网设备接收数据,数据应该先保存在Hadoop中然后保存到Cassandra中? lambda体系结构在批处理层中包含Hadoop,接收数据并将其发送到服务层到nosql数据库。

为什么数据应该是Hadoop中的第一个? 以及如果Hadoop包含原始数据,在Cassandra中存储了哪些数据?

此时流层不在焦点。 我只想了解一起使用Cassandra和Hadoop。

Hadoop中的数据用于大型分析,在cassandra中应该有我的Hadoop作业的结果。

这是否意味着我可以存储我的原始数据?如果不仅大型分析工作对我的应用程序有用,我可以将我的原始数据存储在Cassandra和Hadoop中?

INSERT INTO temperature(weatherstation_id,event_time,temperature) 
VALUES (’1234ABCD’,’2013-04-03 07:02:00′,’73F’); 

如果这是我的插件和我有成千上万的人在一个单一分钟。 我想做一些大型工作,我使用Hadoop?

但我也需要每一个数据行为我的应用程序没有分析。 Cassandra也在储存它?

+1

您想要实时显示给用户的数据需要在cassandra中。 –

+0

所以我也可以安全我的数据+时间戳在两个?此外,我有可能对大数据集进行分析,并将结果传递给cassandra在不同的表中? – Khan

+0

如何从Hadoop的传递到Cassandra的数据,如果我不想对原始数据的分析?还是应该将数据传递给两者? – Khan

回答

1

折衷在延迟和吞吐量之间。 Hadoop应该提供高吞吐量,但延迟非常高。所以hadoop用于lambda体系结构中的批处理。但是,当您想将预先计算的数据(或汇总数据)传递到可视化层等另一层时,可能会有要求。这些预先计算的数据基本上存储在cassandra或hbase中以具有低延迟。

+0

你的意思是,如果我有大型数据集的分析应该在Hadoop进行,结果在卡桑德拉萨法德? – Khan

+0

如果我想在cassandra中完成任何分析,我还想要所有的时间戳+数据,该怎么办? – Khan

+1

基本上数据的任何改造或操纵可基于hadoop的系统来完成,而且汇总可以存储在没有SQL。 –

1

当您从物联网设备收到数据时,您需要尽快保存这些数据。这正是Cassandra所擅长的。
比你需要处理这些数据,并且由于数据量很大,在实际情况下,你不希望进行即时数据处理,而是需要批处理(例如每晚处理)。
现在轮到Hadoop了。
因此,您必须从Cassandra中提取数据,然后将其放入Hadoop的文件系统(hdfs)中,然后执行一些处理(通过Hive或Spark)。
你也可以考虑使用Cassandra-Spark直接流式作业,但是我建议先从Cassandra中复制数据,因为这样可以将这些数据用作沙箱(调试作业,测试新算法等)对Casandra集群性能的影响。

0

您可以阅读关于卡桑德拉和大数据here
免责声明:我是这篇文章的作者。