CREATE PIPE
CREATE PIPE создает новый pipe для определения выражения INSERT INTO SELECT FROM FILES, используемого системой для загрузки данных из указанного исходного файла данных в целевую таблицу. Эта команда поддерживается начиная с версии v1.5.2.
Синтаксис
CREATE [OR REPLACE] PIPE [db_name.]<pipe_name>
[PROPERTIES ("<key>" = "<value>"[, "<key> = <value>" ...])]
AS <INSERT_SQL>
Selena поддерживает CREATE [OR REPLACE] PIPE начиная с версии v1.5.2. Когда вы используете 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://selena-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://selena-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.