Разбор ошибок загрузки и обновления данных
В случае возникновения ошибок во время загрузки или обновления данных система отменяет операции записи (далее — операции), которые не удалось успешно завершить, и возвращает данные в состояние, предшествовавшее загрузке или обновлению. Основные причины ошибок см. в секции ниже.
При необходимости используйте запросы для управления процессами загрузки и обновления данных:
- GET_WRITE_OPERATIONS — возвращает информацию об операциях горячей дельты, находящихся в статусах «Выполняется» и «Ошибка»;
- RESUME_WRITE_OPERATION — возобновляет обработку операций горячей дельты, находящихся в статусах «Выполняется» и «Ошибка»;
- ROLLBACK CRASHED_WRITE_OPERATIONS — возобновляет обработку операций горячей дельты, находящихся в статусе «Ошибка»;
- ROLLBACK DELTA — отменяет операции горячей дельты.
Основные причины ошибок загрузки и обновления данных
Основные причины ошибок загрузки данных:
- некорректная схема или записи Avro в сообщениях топика Kafka;
- несоответствие порядка, количества или типа полей между сообщениями Kafka, логической таблицей или внешней таблицей загрузки (кроме поля
sys_op
, которое должно присутствовать в сообщениях, но должно отсутствовать в таблицах); - некорректный путь к топику Kafka в настройках внешней таблицы загрузки;
- недостаточная продолжительность одного или нескольких интервалов ожидания, заданных в конфигурации системы и используемых при работе с брокером сообщений Kafka;
- некорректные настройки сервиса мониторинга статусов Kafka в конфигурации системы;
- расхождения времени между серверами инсталляции;
- некорректная установка коннектора, предназначенного для загрузки данных.
Интервалы ожидания при работе с брокером сообщений Kafka настраиваются с помощью параметров конфигурации EDML_FIRST_OFFSET_TIMEOUT_MS
и EDML_CHANGE_OFFSET_TIMEOUT_MS
, а также параметра ADB_MPPW_FDW_TIMEOUT_MS
, который используется только для ADB.
Основные причины ошибок обновления данных:
- несоответствие порядка, количества или типов столбцов между логической таблицей-приемником данных и запросом на обновление данных;
- отсутствие в запросе UPSERT VALUES или UPSERT SELECT значений обязательных столбцов логической таблицы;
- указание в запросе UPSERT SELECT тех СУБД хранилища, для которых недоступна вставка данных.