druid用于实时和批处理。但它能完全取代hadoop吗?如果不是,为什么?hadoop比druid有什么优势?我读过Druid和hadoop一起使用的文章。那么可以避免使用hadoop吗?
rxztt3cl1#
你能避免在druid中使用hadoop吗?是的,您可以将数据实时流式传输到druid集群中,而不是使用hadoop批量加载数据。一种方法是将数据流到kafka中,kafka将处理传入的事件并将它们传递到storm中,然后storm可以处理并将它们加载到druid实时节点中。通常这种设置与hadoop并行使用,因为流式实时数据有自己的包袱,通常需要修复和回填。整个建筑被一些人称为“lambda”。
iecba09b2#
我们在这里讨论的是两种稍微相关但非常不同的技术。druid是一个实时分析系统,非常适合timeseries和基于时间的事件聚合。hadoop是hdfs(一种分布式文件系统)+map reduce(一种执行分布式进程的范例),它们共同创建了一个分布式处理的生态系统,并作为许多其他开源项目的基础/影响技术。你可以设置druid使用hadoop;也就是说,启动mr jobs来索引批处理数据,并从hdfs读取其索引数据(当然,它会将这些数据本地缓存在本地磁盘上)如果您想忽略hadoop,您也可以从本地机器进行索引和加载,当然会受到限制在一台机器上的惩罚。
2条答案
按热度按时间rxztt3cl1#
你能避免在druid中使用hadoop吗?是的,您可以将数据实时流式传输到druid集群中,而不是使用hadoop批量加载数据。一种方法是将数据流到kafka中,kafka将处理传入的事件并将它们传递到storm中,然后storm可以处理并将它们加载到druid实时节点中。
通常这种设置与hadoop并行使用,因为流式实时数据有自己的包袱,通常需要修复和回填。整个建筑被一些人称为“lambda”。
iecba09b2#
我们在这里讨论的是两种稍微相关但非常不同的技术。
druid是一个实时分析系统,非常适合timeseries和基于时间的事件聚合。
hadoop是hdfs(一种分布式文件系统)+map reduce(一种执行分布式进程的范例),它们共同创建了一个分布式处理的生态系统,并作为许多其他开源项目的基础/影响技术。
你可以设置druid使用hadoop;也就是说,启动mr jobs来索引批处理数据,并从hdfs读取其索引数据(当然,它会将这些数据本地缓存在本地磁盘上)
如果您想忽略hadoop,您也可以从本地机器进行索引和加载,当然会受到限制在一台机器上的惩罚。