2016-01-25 4 views
0

Я использую инструмент BI Domo, который использует Amazon Red Shift. У меня есть набор данных, который работает в ночное время с использованием данных Zendesk.Как найти нулевую стоимость внутри номера?

Я получаю эту ошибку:

OnboardFlowExecution(2794) data flow execution id 
(724670342c4c48a9a61e7a617e6462c1) failed: 
java.lang.NumberFormatException: For input string: "null" 

Я исследовал ошибку, и я нахожусь под впечатлением, что где-то в наборе данных в Number столбец содержит данные, он не любит и сеет хаос с моим нисходящим процессом.

Как найти встречный столбец/строку?

+0

У меня нет практического опыта работы с Domo так возьмите это с зерном соли ... но это, кажется, быть вашим BI-инструментом из-за неправильного ввода данных из бэкэнд. Инструменты BI обычно находятся непосредственно в базе данных или используют проприетарные датамарты (юниверсы, кубы и т. Д.), Которые подаются базой данных через процесс ETL администратора. Лучше всего будет выявлять любые доступные файлы журналов, чтобы лучше отслеживать, какая таблица терпит неудачу, а затем переходить непосредственно в базовую базу данных, чтобы проверить ваши предположения относительно фактических данных. Ужасно, я знаю, но это то, с чего я начну. – DanK

+0

Я согласен с вами в том, что это инструмент BI. Но любая помощь, которую я могу идентифицировать в колонке и поле для нарушения, будет иметь большое значение. Спасибо – donviti

+1

К сожалению, никто здесь не сможет помочь вам в деталях, которые вы ищете, потому что им нужен полный доступ к вашей системе, чтобы определить проблему. Я могу сказать вам из вашего java.lang.NumberFormatException (https://docs.oracle.com/javase/7/docs/api/java/lang/NumberFormatException.html), что вы пытаетесь преобразовать нулевое значение в число. Если бы я должен был догадаться, вероятно, во время процесса ETL конвертировать данные для конечных пользователей, чтобы вы могли связаться с вашим администратором баз данных или администратором BI, который создал ваши Datamarts для поиска по журналам сбоев. – DanK

ответ

1

Amazon RedShift ожидает строковое значение в столбце, но вместо этого принимает значения «null». Следовательно, это бросает исключение (своего рода ошибка).

Добавить преобразование во входной набор данных для обработки нулевого исключения. Ранее мы использовали функцию NVL в RedShift для замены нулевых значений чем-то другим.

E.g. Ваше преобразование может быть:

Выберите employee_id, NVL (emp_first_name, 'No Name') от сотрудников;

NVL функция заменит все нулевые значения в столбце «emp_first_name» с «No Name»

+0

Вы также можете использовать встроенный Domo ETL для удаления/замены нулей чем-то другим. – Abhi