использование источника http для сохранения файлов (другое расширение) в HDFS с тем же расширением

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

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

Создание потока httpToHdfs --defination "http | HDFS" --deploy

но когда я загружаю файлы в формате .gzip/.xml/.json, он сохраняет файлы в формате .txt

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


person Neeraj Trivedi    schedule 21.02.2015    source источник


Ответы (1)


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

person Thomas Risberg    schedule 23.02.2015