我需要创建一个数据管道,其中source是HTTP,Sink是HDFS来发布数据和文件。问题是,我想保存的文件的扩展名与最初发送到HTTP源的文件相同。
我用下面的脚本创建了一个流
流创建httpToHdfs--定义"http|HDFS"--部署
但是当我上传.gzip/.xml/.json格式的文件时,它会将文件存储在.txt 中
我只想通过HTTP源在HDFS中复制文件,是否可以使用spring-xd?
hdfs
接收器用于将基于文本的流写入hdfs。它采用了一个名为--fileExtension
的选项,您可以在其中指定文件扩展名。这个接收器并不是用来复制二进制文件的,但你必须为此使用自定义的批处理作业,并在文件可用后让你的http源向批处理作业发送消息。提供了一个批处理作业filepollhdfs
,它对CSV文件执行类似的操作。