CREATE EXTERNAL CATALOG
CREATE EXTERNAL CATALOG создает external catalog. Вы можете использовать external catalog для запроса данных из внешних источников данных без загрузки данных в Selena или создания внешних таблиц. В настоящее время вы можете создавать следующие типы external catalog:
- Hive catalog: используется для запроса данных из Apache Hive™.
- Iceberg catalog: используется для запроса данных из Apache Iceberg.
- Hudi catalog: используется для запроса данных из Apache Hudi.
- Delta Lake catalog: используется для запроса данных из Delta Lake.
- JDBC catalog: используется для запроса данных из JDBC-совместимых источников данных.
- Elasticsearch catalog: используется для запроса данных из Elasticsearch. Elasticsearch catalog поддерживаются начиная с версии 1.5.0.
- Paimon catalog: используется для запр оса данных из Apache Paimon. Paimon catalog поддерживаются начиная с версии 1.5.0.
- Unified catalog: используется для запроса данных из Hive, Iceberg, Hudi и Delta Lake источников данных как единого источника данных. Unified catalog поддерживаются начиная с версии 1.5.0.
ПРИМЕЧАНИЕ
- В версии 3.0 и более поздних этот оператор требует привилегию CREATE EXTERNAL CATALOG на уровне SYSTEM.
- Перед созданием external catalog настройте ваш кластер Selena в соответствии с требованиями системы хранения данных (например, Amazon S3), службы метаданных (например, Hive metastore) и службы аутентификации (например, Kerberos) внешних источников данных. Для получения дополнительной информации см. раздел "Перед началом работы" в каждой теме external catalog.
Синтаксис
CREATE EXTERNAL CATALOG [IF NOT EXISTS] <catalog_name>
[COMMENT <comment>]
PROPERTIES ("key"="value", ...)
Параметры
| Параметр | Обязательный | Описание |
|---|---|---|
| catalog_name | Да | Имя external catalog. Для соглашений об именовании см. Системные ограничения. |
| comment | Нет | Описание external catalog. |
| PROPERTIES | Да | Свойства external catalog. Настройте свойства в зависимости от типов external catalog. Для получения дополнительной информации см. Hive catalog, Iceberg catalog, Hudi catalog, Delta Lake catalog и JDBC Catalog. |
Примеры
Пример 1: Создание Hive catalog с именем hive_metastore_catalog. Соответствующий кластер Hive использует Hive metastore в качестве службы метаданных.
CREATE EXTERNAL CATALOG hive_metastore_catalog
COMMENT "External catalog to Hive"
PROPERTIES(
"type"="hive",
"hive.metastore.uris"="thrift://xx.xx.xx.xx:9083"
);
Пример 2: Создание Hive catalog с именем hive_glue_catalog. Соответствующий кластер Hive использует AWS Glue в качестве службы метаданных.
CREATE EXTERNAL CATALOG hive_glue_catalog
COMMENT "External catalog to Hive"
PROPERTIES(
"type"="hive",
"hive.metastore.type"="glue",
"aws.hive.metastore.glue.aws-access-key"="xxxxxx",
"aws.hive.metastore.glue.aws-secret-key"="xxxxxxxxxxxx",
"aws.hive.metastore.glue.endpoint"="https://glue.x-x-x.amazonaws.com"
);
Пример 3: Создание Iceberg catalog с именем iceberg_metastore_catalog. Соответствующий кластер Iceberg использует Hive metastore в качестве службы метаданных.
CREATE EXTERNAL CATALOG iceberg_metastore_catalog
COMMENT "External catalog to Iceberg"
PROPERTIES(
"type"="iceberg",
"iceberg.catalog.type"="hive",
"iceberg.catalog.hive.metastore.uris"="thrift://xx.xx.xx.xx:9083"
);
Пример 4: Создание Iceberg catalog с именем iceberg_glue_catalog. Соответствующий кластер Iceberg использует AWS Glue в качестве службы метаданных.
CREATE EXTERNAL CATALOG iceberg_glue_catalog
COMMENT "External catalog to Iceberg"
PROPERTIES(
"type"="iceberg",
"iceberg.catalog.type"="glue",
"aws.hive.metastore.glue.aws-access-key"="xxxxx",
"aws.hive.metastore.glue.aws-secret-key"="xxxxxxxxxxxx",
"aws.hive.metastore.glue.endpoint"="https://glue.x-x-x.amazonaws.com"
);
Пример 5: Создание Hudi catalog с именем hudi_metastore_catalog. Соответствующий кластер Hudi использует Hive metastore в качестве службы метаданных.
CREATE EXTERNAL CATALOG hudi_metastore_catalog
COMMENT "External catalog to Hudi"
PROPERTIES(
"type"="hudi",
"hive.metastore.uris"="thrift://xx.xx.xx.xx:9083"
);
Пример 6: Создание Hudi catalog с именем hudi_glue_catalog. Соответствующий кластер Hudi и спользует AWS Glue в качестве службы метаданных.
CREATE EXTERNAL CATALOG hudi_glue_catalog
COMMENT "External catalog to Hudi"
PROPERTIES(
"type"="hudi",
"hive.metastore.type"="glue",
"aws.hive.metastore.glue.aws-access-key"="xxxxxx",
"aws.hive.metastore.glue.aws-secret-key"="xxxxxxxxxxxx",
"aws.hive.metastore.glue.endpoint"="https://glue.x-x-x.amazonaws.com"
);
Пример 7: Создание Delta Lake catalog с именем delta_metastore_catalog. Соответствующая служба Delta Lake использует Hive metastore в качестве службы метаданных.
CREATE EXTERNAL CATALOG delta_metastore_catalog
COMMENT "External catalog to Delta"
PROPERTIES(
"type"="deltalake",
"hive.metastore.uris"="thrift://xx.xx.xx.xx:9083"
);
Пример 8: Создание Delta Lake catalog с именем delta_glue_catalog. Соответствующая служба Delta Lake использует AWS Glue в качестве службы метаданных.
CREATE EXTERNAL CATALOG delta_glue_catalog
COMMENT "External catalog to Delta"
PROPERTIES(
"type"="deltalake",
"hive.metastore.type"="glue",
"aws.hive.metastore.glue.aws-access-key"="xxxxxx",
"aws.hive.metastore.glue.aws-secret-key"="xxxxxxxxxxxx",
"aws.hive.metastore.glue.endpoint"="https://glue.x-x-x.amazonaws.com"
);
Ссылки
- Для просмотра всех catalog в вашем кластере Selena см. SHOW CATALOGS.
- Для просмотра оператора создания external catalog см. SHOW CREATE CATALOG.
- Для удаления external catalog из вашего кластера Selena см. DROP CATALOG.