У меня есть случай, когда я получаю несколько CSV от третьих лиц (не сложно заставить их изменить формат), и эти CSV должны иметь одинаковые столбцы, но иногда один или несколько столбцов отсутствуют. Если я использую файл CDAP (чтение в виде текста), а затем Wrangler для обработки CSV, то Wrangler со следующей директивой:
parse-as-csv :body '\\t' true
cleanse-column-names
Предполагается, что все прочитанные файлы имеют одинаковый формат столбцов и будут испортить данные о файлах, которые имеют меньше или больше столбцов, чем первый файл.
До сих пор я пытался использовать файл для чтения в виде BLOB-объектов и для вывода в виде байтов с помощью Wrangler, настроенного с помощью этой директивы:
set-type :body string
parse-as-csv :body '\t' true
cleanse-column-names
Но теперь у меня даже нет вывода (или ошибки), поэтому я не знаю, как разобрать эти неоднородные файлы. Может ли CDAP справиться с этим делом? Если да, то как?