# Устранение неполадок с задачами данных

В этом разделе описаны проблемы, которые могут произойти во время работы с задачами данных, а также способы их устранения.

## Устранение неполадок с ошибками среды

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

* Задачи промежуточного хранения с источниками данных, доступными только через Шлюз движения данных:

  Повторные попытки выполнения операции предпринимаются неограниченное количество раз с интервалом 5 секунд.

  Если сбой в работе длится долго, интервал удваивается вплоть до достижения 1800 секунд.

* Задачи промежуточного хранения данных с источниками данных, доступными без Шлюз движения данных, задачи хранения, задачи преобразования и задачи киоска данных:

  Повторные попытки выполнения операции предпринимаются 3 раза с интервалом в 1 секунду.

Выполните следующие действия.

1. Исправьте ошибку, используя сообщение об ошибке.

2. Выполните перезагрузку или возобновите операцию задачи данных.

## Исправление неполадок с конкретной таблицей

Когда задача данных сталкивается с ошибкой при записи в определенную таблицу, задача данных продолжает работу. Для таблицы с ошибкой будет отображаться состояние Ошибка и сообщение об ошибке.

1. Исправьте ошибку, используя сообщение об ошибке.

2. Перезагрузите таблицу, в связи с которой возникла ошибка.

## Устранение неполадок, связанных с режимом обновления CDC (Захват изменений данных)

В задачах промежуточного хранения данных с режимом обновления Полная загрузка и CDC могут возникать проблемы, связанные с захватом изменений данных, которые затрагивают выполнение задачи в целом и которые нельзя решить путем перезагрузки конкретных таблиц. В качестве примеров проблем можно привести отсутствующие события, проблемы, вызванные реорганизацией исходной базы данных, или ошибку чтения событий исходной базы данных.

Чтобы решить эти проблемы, можно перезагрузить все таблицы в цель.

1. Остановите задачу данных и все задачи, которые ее используют.

2. Откройте задачу данных и перейдите вкладку Мониторинг.

3. Щелкните ..., а затем Перезагрузить цель.

В результате этого все таблицы будут перезагружены в цель с использованием операции «Отбросить-Создать» (Drop-Create), а также будут перезапущены все процессы захвата изменений данных с этого момента.

* Задачи хранения, которые используют эту задачу промежуточного хранения, будут перезагружены в режиме «Сравнить и применить» для синхронизации при следующем запуске. Существующая история будет сохранена. История типа 2 будет обновлена с учетом изменений после выполнения процесса «Перезагрузка и сравнение».

  Метка времени для начальной даты в истории типа 2 будет отражать дату перезагрузки, а не фактическую дату внесения изменения в источник.

* Виды хранения в реальном времени не будут надежными во время операции перезагрузки цели и до окончания синхронизации. Хранилище полностью синхронизируется, когда:

  * все таблицы перезагружаются в режиме «Сравнить и применить»,

  * один цикл изменений выполняется для каждой таблицы.

Для получения дополнительной информации см. раздел [Перезагрузка всех таблиц в цель](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Landing/Landing-data-data-sources.htm#Reloadin).

## Значения NULL в столбцах первичного ключа

При выполнении задачи данных может появиться сообщение об ошибке: Unknown execution error - NULL result in a non-nullable column.

Возможная причина

Столбцы, используемые в качестве первичного ключа, не должны содержать значения NULL и не должны допускать нулевые значения.

Предлагаемые меры

В исходной задаче данных добавьте выражение, которое преобразует все значения NULL в определенное значение, например 0.

Также можно выбрать другой столбец, который требуется использовать в качестве первичного ключа.

## Ошибка приведения типа при использовании Redshift в качестве платформы данных

При использовании Redshift в качестве платформы данных может произойти следующая или подобная ошибка: Не удалось найти функцию преобразования из значения «неизвестно» в переменный символ

Возможная причина

Отсутствует приведение типа константного выражения. Эта ошибка чаще всего происходит в киосках данных из-за более высокой сложности окончательного запроса.

Предлагаемые меры

Приведение типа константного выражения к виду текста.

Пример:

```
cast ('my constant string' as Text)
```

## Неоднозначные имена столбцов

Когда данные регистрируются на основе вида, созданного в конвейере Qlik Talend Data Integration, вид может содержать столбцы, которые были сгенерированы Qlik Talend Data Integration. Имена этих столбцов, начинающиеся с hdr\_\_, зарезервированы. Когда столбец с зарезервированным именем используется в задаче хранения, эта задача будет создавать столбцы с тем же зарезервированным именем, что приведет к конфликту имен. Например, может быть два столбца с именем hdr\_\_key\_hash.

Для получения дополнительной информации о зарезервированных именах столбцов в видах см. раздел [Представления](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Storage/dataset-tables.htm#Views).

Предлагаемые меры

Переименуйте столбец, который берется из задачи зарегистрированных данных, в задаче хранения данных. Например, переименуйте hdr\_\_key\_hash в my\_\_key\_hash.

## Преобразования не применяются к существующим данным

Вы добавили или изменили преобразования в задаче с существующими данными, но при повторной подготовке и запуске задачи новые или измененные преобразования применяются только к новым данным.

Предлагаемые меры

Перезагрузите все затронутые таблицы, если вы хотите применить новые или измененные преобразования ко всем существующим данным.