Перейти к основному содержимому

CREATE PIPE

CREATE PIPE создает новый pipe для определения оператора INSERT INTO SELECT FROM FILES, используемого системой для загрузки данных из указанного исходного файла данных в целевую таблицу. Эта команда поддерживается начиная с версии 1.5.0.

Синтаксис

CREATE [OR REPLACE] PIPE [db_name.]<pipe_name> 
[PROPERTIES ("<key>" = "<value>"[, "<key> = <value>" ...])]
AS <INSERT_SQL>

Selena поддерживает CREATE [OR REPLACE] PIPE начиная с версии 1.5.0. Когда вы используете CREATE [OR REPLACE] PIPE для создания pipe и имя pipe, указанное в pipe_name, совпадает с именем существующего pipe в текущей базе данных, существующая база данных заменяется новым pipe.

Параметры

db_name

Уникальное имя базы данных, к которой принадлежит pipe.

ВНИМАНИЕ

Каждый pipe принадлежит определенной базе данных. Если вы удалите базу данных, к которой принадлежит pipe, pipe удаляется вместе с базой данных и не может быть восстановлен, даже если база данных восстанавливается.

pipe_name

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

INSERT_SQL

Оператор INSERT INTO SELECT FROM FILES, который используется для загрузки данных из указанного исходного файла данных в целевую таблицу.

Для получения дополнительной информации о табличной функции FILES() см. FILES.

PROPERTIES

Набор дополнительных параметров, которые определяют, как выполнять pipe. Формат: "key" = "value".

СвойствоЗначение по умолчаниюОписание
AUTO_INGESTTRUEВключить ли автоматические инкрементальные загрузки данных. Допустимые значения: TRUE и FALSE. Если вы установите этот параметр в TRUE, автоматические инкрементальные загрузки данных включены. Если вы установите этот параметр в FALSE, система загружает только содержимое исходного файла данных, указанного при создании задания, и последующее новое или обновленное содержимое файла не будет загружено. Для массовой загрузки вы можете установить этот параметр в FALSE.
POLL_INTERVAL300 секундИнтервал опроса для автоматических инкрементальных загрузок данных.
BATCH_SIZE1GBРазмер данных, загружаемых как пакет. Если вы не включаете единицу измерения в значение параметра, используется единица по умолчанию - байт.
BATCH_FILES256Количество исходных файлов данных, загружаемых как пакет.

Примеры

Создать pipe с именем user_behavior_replica в текущей базе данных для загрузки данных из примера набора данных s3://starrocks-examples/user_behavior_ten_million_rows.parquet в таблицу user_behavior_replica:

CREATE PIPE user_behavior_replica
PROPERTIES
(
"AUTO_INGEST" = "TRUE"
)
AS
INSERT INTO user_behavior_replica
SELECT * FROM FILES
(
"path" = "s3://starrocks-examples/user_behavior_ten_million_rows.parquet",
"format" = "parquet",
"aws.s3.region" = "us-east-1",
"aws.s3.access_key" = "AAAAAAAAAAAAAAAAAAAA",
"aws.s3.secret_key" = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
);

ПРИМЕЧАНИЕ

Замените ваши учетные данные на AAA и BBB в приведенной выше команде. Можно использовать любые действительные aws.s3.access_key и aws.s3.secret_key, поскольку объект доступен для чтения любому аутентифицированному пользователю AWS.

Этот пример использует метод аутентификации на основе пользователя IAM и файл Parquet, который имеет ту же схему, что и таблица Selena. Для получения дополнительной информации о других методах аутентификации и использовании CREATE PIPE см. Аутентификация в ресурсах AWS и FILES.

Ссылки