Запросы INSERT¶
Плагин PXF JDBC позволяет выполнять запросы INSERT во внешних таблицах.
Important
Плагин не гарантирует согласованность запросов INSERT. В этих целях рекомендуется использовать промежуточную (staging-) таблицу во внешней базе данных
Для выполнения запросов INSERT необходимо в PXF создать таблицу EXTERNAL WRITABLE TABLE с форматом FORMAT ‘CUSTOM’ (FORMATTER=’pxfwritable_export’).
Параметры PARTITION_BY, RANGE и INTERVAL в данных таблицах игнорируются.
Пакетный режим¶
Запросы INSERT могут быть пакетированы, что значительно увеличивает производительность в случае, если внешняя база данных поддерживает пакетный режим.
Для включения пакетной обработки необходимо создать внешнюю таблицу с параметром BATCH_SIZE, установленным в одно из значений:
- integer > 1 – используется пакет заданного размера;
- integer < 0 – используется безразмерный пакет (все записи отправляются одним огромным JDBC-запросом). Настройка может вызвать ошибки, так как каждая база данных имеет собственный лимит на размер запросов JDBC;
- 0 или 1 – пакетирование не используется.
Пакетная обработка должна поддерживаться драйвером JDBC внешней базы данных. В случае если драйвер не поддерживает пакетный режим, то плагин PXF выполняет запрос INSERT так, как если бы параметр BATCH_SIZE отсутствовал, а в журналы PXF помещается информационное сообщение.
По умолчанию пакетная обработка не используется (параметр BATCH_SIZE отсутствует).