xml数据来自文本文件。将他们的flume和kafka摄取到hdfs并以.txt文件格式保存。
退出用例:xml文件通过flume→kafka→flumeintercepter(无论是否验证有效模式)摄取 - >发送到有效或无效的kafka tpoic→hdfs sink(有效和无效)保存在.txt文件中
新的是:
我需要采取有效的kafka主题,并需要编写自己的水槽拦截器将xml数据转换为avro格式并发送到→hdfs sink(hdfs有效位置)最终输出需要是avro文件格式..
任何帮助,将不胜感激
提前致谢 ...
您可以使用apache kite morphlines interceptor将您的数据转换为avro
看看这个
我希望它有帮助:)
您可能有兴趣使用apache avro JAVA API(http://avro.apache.org/docs/1.8.2/gettingstartedjava.html)将XML转换为AVRO
转换后,您可以在您的水槽拦截器中使用此代码并编写AVRO文件,但您还需要具有可以从XSD架构创建的avro架构。
我在spring xd stream中做了类似的事情。
希望这可以帮助