Мой вариант использования — выбрать файл .csv
, который поступает из контейнера озера данных, проверить типы данных, включенных в .csv
(если типы данных недействительны, произойдет сбой конвейера) и, наконец, загрузить данные в таблицу БД.
В потоке данных в преобразовании datasource
на вкладке проекции я выполнил detect data type
, и он точно определяет тип данных некоторых полей.
Я также выбрал этот вариант validate schema
, который предполагается, если тип данных не соответствует проекции.
Чтобы искусственно протестировать это, я загрузил .csv
с типом str
там, где следует ожидать int
.
Однако поток данных НЕ потерпел неудачу.
Есть идеи, как удовлетворить вышеупомянутое требование?
Опция «Проверить схему» проверяет структуру исходных данных и данных приемника, если ее несовпадение приведет к ошибке.
Есть идеи, как удовлетворить вышеупомянутое требование?
Чтобы обнаружить несовпадение столбцов, вы можете использовать преобразование утверждения и заполнить поток данных, если тип данных не совпадает.
For String expression: iif (isInteger(Colname),false(),true())
For Integer expression: iif (isInteger(colname),true(),false())
подумайте о наличии более 150 столбцов, и это довольно часто меняется. Тем не менее, это правильное решение, которое я тоже нашел.
Можете ли вы добавить ваку, которые пробовали?