Начало работы
Подключение
Тесты производительности
Развёртывание
Использование данных
Загрузка данных
Миграция данных
Запрос данных
Управление кластерами
Обновление
Глобальное обслуживание
Масштабирование
Мониторинг
Безопасность
Лучшие практики
Технические принципы
Типы данных
Хранилище
Исполняющий движок
Потоковая обработка (Domino)
MARS3 Индексы
Расширения
Расширенные функции
Расширенный запрос
Федеративные запросы
Grafana
Резервное копирование и восстановление
Аварийное восстановление
Руководство
Настройка производительности
Устранение неполадок
Инструменты
Параметры конфигурации
SQL-команда
Часто задаваемые вопросы
В этом документе описывается механизм отказоустойчивости в MatrixGate.
Внутренне MatrixGate использует внешние таблицы для вставки данных в целевую таблицу микропакетами. Следовательно, данные загружаются пакетами, и если ранее любая строка содержала ошибку форматирования, весь пакет отклонялся.
Начиная с версии 4.3, MatrixGate предоставляет механизм отказоустойчивости. Теперь одна некорректная строка не мешает загрузке остальных данных. MatrixGate возвращает информацию об ошибочной строке и записывает ошибку в лог.
Примечание!
Отказоустойчивость применяется только к ошибкам форматирования данных. Если происходит нарушение ограничений (например, дублирование ключа в уникальном индексе), весь пакет всё равно будет отклонён.
В отличие от предыдущих версий, где любые неверные данные приводили к ответу HTTP 500, теперь MatrixGate возвращает HTTP 200 даже при возникновении ошибок. Тело ответа содержит сведения о проблемных строках. Например:
At line: 2
missing data for column "c3"
Отказоустойчивость не является неограниченной. Порог допустимых ошибок управляется параметром GUC: gp_reject_limit. Если количество строк с ошибками превышает 5 * gp_reject_limit, вставка пакета завершается неудачей.
Более подробную информацию см. в разделе MatrixGate.