POSTGRESQL_DATA_WRITER

POSTGRESQL_DATA_WRITER массовый загрузчик, подходящий для загрузки большого количества записей в базу данных PostgreSQL. Считывает данные через входной порт. Использует специальную утилиту Copy, которая позволяет загружать данные очень быстро. Для остальных случаев лучше использовать DATABASE_WRITER, для которого не требуется использование специальной утилиты.

Порты POSTGRESQL_DATA_WRITER:

Тип портаНомерОбязательныйОписаниеМетаданные
Input1-nдаЗаписи для загрузки в базу данныхЛюбые

Атрибуты POSTGRESQL_DATA_WRITER:

АтрибутОбязательныйОписаниеВозможные значения
dbConnection да Параметры соединения с базой данных. В список параметров для подключения могут входить: database, user, password, host, port. Параметры можно указать в атрибуте конкретного шага либо в глобальных параметрах графа.

dbConnection="postgres://admin:admin@localhost:5432/dev"

tableдаИмя таблицы, в которую производится запись

table="${tableNameTo}"

parametersнетПараметры, которые могут использоваться в качестве параметров утилитой psql или оператором \copy. Указывается последовательность ключ=значение, отделенные друг от друга точкой с запятой, двоеточием или вертикальной чертой. Если значение какого-либо параметра содержит точку с запятой, двоеточие или вертикальную черту, такое значение должно быть заключено в двойные кавычки. Сейчас доступны к указанию columns

parameters="columns="${COLUMNS}""

Пример.

Необходимо загрузить записи с метаданными «Product» (string), «Amount» (int), «date» (date) и «Price» (float) в таблицу Products в базу данных postgres с именем пользователя user001.

Укажите параметры подключения в атрибутах графа и шага POSTGRESQL_DATA_WRITER:

<Connection id="CONN" name="dev" dbURL="postgres://username:admin@localhost:5432/test"/>
<GraphParameters>
	<GraphParameter name="COLUMNS" value="my_boolean,my_integer,my_number,my_decimal,my_string" public="true" />
</GraphParameters>
...
<Node id="psql_writer" dbConnection="CONN" table="my_data_test" parameters="columns=&quot;${COLUMNS}&quot;" type="POSTGRESQL_DATA_WRITER" />

Данные будут внесены в базу:

POSTGRESQL_DATA_WRITER записывает данные в базу PostgreSQL