2015-02-21 12 views
1

Мне нужно создать линию передачи данных, где источником является HTTP, а Sink - HDFS для отправки данных и файлов. Проблема в том, что я хочу сохранить файлы с тем же расширением, которые они первоначально отправили в источник HTTP.с использованием источника http для сохранения файлов (другое расширение) в HDFS с тем же расширением

Я создал поток с ниже сценария

поток создать httpToHdfs --defination "HTTP | HDFS" --deploy

но когда я отправляю файлы в .gzip /.xml/.json форматировать его хранит файлы в .txt

Я просто хочу скопировать файл в HDFS через HTTP-источник, возможно ли это с помощью Spring xd?

ответ

0

Раковина hdfs Используется для записи текстового потока в hdfs. Он принимает опцию с именем --fileExtension, где вы можете указать расширение файла. Этот приемник не предназначен для копирования двоичного файла, так как вам нужно использовать для этого специализированное пакетное задание, и ваш источник HTTP отправит сообщение в пакетное задание после того, как файл будет доступен. Существует предоставленное пакетное задание filepollhdfs, которое делает что-то подобное для файлов CSV.