我正在使用HDFS接收器并写入HDFS。但我写入HDFS的有效负载前缀为?contentType“text / plain”,尽管这不在有效负载中。 请让我知道为什么这会有前缀以及如何删除它。
stream create --definition“:streaming --spring.cloud.stream.bindings.output.producer.headerMode = raw> myprocessor --spring.cloud.stream.bindings.output.content-type = text / plain --spring.cloud.stream.bindings.input.consumer.headerMode = raw | hdfs --spring.hadoop.fsUri = hdfs://127.0.0.1:50071 --hdfs.directory = / ws / sparkoutput --hdfs。 file-name = sparkstream --hdfs.enable-sync = true --hdfs.flush-timeout = 10000 --spring.cloud.stream.bindings.input.consumer.headerMode = raw --spring.cloud.stream.bindings。 input.content-type = text / plain“--name sparkstream
答案 0 :(得分:0)
如果您假设hdfs
输入的标题模式为raw
,那么您也应该输出myprocessor
raw
- 即
myprocessor --spring.cloud.stream.bindings.output.content-type=text/plain --spring.cloud.stream.bindings.input.consumer.headerMode=raw --spring.cloud.stream.bindings.output.producer.headerMode=raw
或者您应该删除hdfs
上的标头设置(因为接收器只会处理有效负载)。