从Kafka“导入”流数据到HBase的最佳实践是什么?
用例如下:车辆传感器数据流式传输到 Kafka。之后,必须转换这些传感器数据(即,从人类可读数据中的 protobuf 反序列化)并存储在 HBase 中。
1)您推荐哪种工具集(例如,Kafka --> Flume --> HBase、Kafka --> Storm --> HBase、Kafka --> Spark Streaming --> HBase、Kafka --> HBase)
2) 进行 protobuf 去盐化的最佳位置是什么(例如,在 Flume 中使用拦截器)?
感谢您的支持。
最好的,托马斯
最佳答案
我想你只需要做 Kafka -> Storm -> HBase .
Storm : Storm 喷口 将订阅 Kafka 主题。
然后 Storm bolt 可以转换数据并写入HBase。
你可以在java中使用HBase客户端api从Storm向HBase写入数据。
我建议使用 Storm,因为它实际上一次处理一个元组。 In Spark streaming, a micro-batch is processed
.但是,如果您想使用通用基础设施进行批处理和流处理,那么 Spark 可能是一个不错的选择。
如果您最终使用 Spark,那么您的流程也是 Kafka -> Spark -> HBase .
关于apache-spark - 集成Kafka和HBase的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32065717/