我想把数据从慰借带到hadoop使用flume,有人能让我知道如何编写拦截器来将protobuf转换为avro吗?
答案 0 :(得分:0)
有一个非常详细的集成指南,描述了如何使用JMS Flume Source从Solace消息总线接收消息。
这是您正在使用的界面吗?
如果是这样,Ken Barr的博客文章(https://solace.com/blog/devops/solace-as-flume-channel-technical-look)给出了Flume Source和Sink的实现。完整的源代码位于http://dev.solace.com/wp-content/uploads/solace-flume-channel.tgz
FlumeEventToSolaceMessageConverter.solaceToFlume()方法是您需要修改以支持protobuf到avro用例的方法。 OOTB它只是假设JMS消息的主体是一个avro消息。
在GitHub上,我们发现了一个protobuf到avro转换器(vpon / protobuf-to-avro),它使用.proto模式文件生成POJO转换器。