我正在从事一个项目,该项目涉及使用HDFS作为存储,使用Spark进行计算。
我需要将来自传感器的数据实时存储到HDFS中。
例如,我有一个气象站,传感器每5秒产生一次数据(温度压力)。我想知道如何在hdfs中实时存储这些数据。
发布于 2019-02-26 23:19:05
将许多小文件直接写入HDFS可能会产生一些不良影响,因为它会影响主节点内存的使用,并可能导致与批处理相比的较低的处理速度。
您的任何传感器将产生每月500 K文件,所以,除非您有非常有限的传感器数量,我建议您看看消息代理。Apache (https://kafka.apache.org/)是众所周知的一个,并且已经捆绑在一些Hadoop发行版中。您可以使用它“阶段”您的数据和处理它在(迷你)批,例如。
最后,如果您需要实时处理输入的数据(CEP等),我建议您注意火花流(https://spark.apache.org/streaming/)技术。
https://stackoverflow.com/questions/54895375
复制相似问题