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_INGEST | TRUE | Включить ли автоматические инкрементальные загрузки данных. Допустимые значения: TRUE и FALSE. Если вы установите этот параметр в TRUE, автоматические инкрементальные загрузки данных включены. Если вы установите этот параметр в FALSE, система загружает только содержимое исходного файла данных, указанного при создании задания, и последующее новое или обновленное содержимое файла не будет загружено. Для массовой загрузки вы можете установить этот параметр в FALSE. |
| POLL_INTERVAL | 300 секунд | Интервал опроса для автоматических инкрементальных загрузок данных. |
| BATCH_SIZE | 1GB | Размер данных, загружаемых как пакет. Если вы не включаете единицу измерения в значение параметра, используется единица по умолчанию - байт. |
| BATCH_FILES | 256 | Количество исходных файлов данных, загружаемых как пакет. |
Примеры
Создать 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.