メインコンテンツまでスキップ

CREATE EXTERNAL CATALOG

CREATE EXTERNAL CATALOG

説明

外部カタログを作成します。外部カタログを使用すると、StarRocksにデータをロードせずに外部データソースのデータをクエリすることができます。現在、次のタイプの外部カタログを作成できます。

  • Hiveカタログ:Apache Hive™からデータをクエリするために使用されます。
  • Icebergカタログ:Apache Icebergからデータをクエリするために使用されます。
  • Hudiカタログ:Apache Hudiからデータをクエリするために使用されます。
  • Delta Lakeカタログ:Delta Lakeからデータをクエリするために使用されます。
  • JDBCカタログ:JDBC互換のデータソースからデータをクエリするために使用されます。

注意

  • v3.0以降、このステートメントはSYSTEMレベルのCREATE EXTERNAL CATALOG権限が必要です。
  • 外部カタログを作成する前に、StarRocksクラスタを外部データソースのデータストレージシステム(Amazon S3など)、メタデータサービス(Hiveメタストアなど)、認証サービス(Kerberosなど)の要件に準拠するように設定してください。詳細については、各外部カタログのトピックの「開始する前に」セクションを参照してください。

構文

CREATE EXTERNAL CATALOG <catalog_name>
[COMMENT <comment>]
PROPERTIES ("key"="value", ...)

パラメータ

パラメータ

必須

説明

catalog_name

Yes

外部カタログの名前。以下の命名規則に従います:

  • 名前は、文字、数字(0-9)、アンダースコア(_)を含めることができます。ただし、文字で始める必要があります。
  • 名前は大文字と小文字を区別し、長さが1023文字を超えることはできません。

comment

No

外部カタログの説明。

PROPERTIES

Yes

外部カタログのプロパティ。外部カタログの種類に基づいてプロパティを設定します。詳細については、 HiveカタログIcebergカタログHudiカタログDelta Lakeカタログ 、および JDBCカタログ を参照してください。

例1:Hiveメタストアをメタデータサービスとして使用するHiveカタログ hive_metastore_catalog を作成します。

CREATE EXTERNAL CATALOG hive_metastore_catalog
PROPERTIES(
"type"="hive",
"hive.metastore.uris"="thrift://x.x.x.x:9083"
);

例2:AWS Glueをメタデータサービスとして使用するHiveカタログ hive_glue_catalog を作成します。

CREATE EXTERNAL CATALOG hive_glue_catalog
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:Hiveメタストアをメタデータサービスとして使用するIcebergカタログ iceberg_metastore_catalog を作成します。

CREATE EXTERNAL CATALOG iceberg_metastore_catalog
PROPERTIES(
"type"="iceberg",
"iceberg.catalog.type"="hive",
"iceberg.catalog.hive.metastore.uris"="thrift://x.x.x.x:9083"
);

例4:AWS Glueをメタデータサービスとして使用するIcebergカタログ iceberg_glue_catalog を作成します。

CREATE EXTERNAL CATALOG iceberg_glue_catalog
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:Hiveメタストアをメタデータサービスとして使用するHudiカタログ hudi_metastore_catalog を作成します。

CREATE EXTERNAL CATALOG hudi_metastore_catalog
PROPERTIES(
"type"="hudi",
"hive.metastore.uris"="thrift://x.x.x.x:9083"
);

例6:AWS Glueをメタデータサービスとして使用するHudiカタログ hudi_glue_catalog を作成します。

CREATE EXTERNAL CATALOG hudi_glue_catalog
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:Hiveメタストアをメタデータサービスとして使用するDelta Lakeカタログ delta_metastore_catalog を作成します。

CREATE EXTERNAL CATALOG delta_metastore_catalog
PROPERTIES(
"type"="deltalake",
"hive.metastore.uris"="thrift://x.x.x.x:9083"
);

例8:AWS Glueをメタデータサービスとして使用するDelta Lakeカタログ delta_glue_catalog を作成します。

CREATE EXTERNAL CATALOG delta_glue_catalog
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"
);

参照

  • StarRocksクラスタのすべてのカタログを表示するには、「SHOW CATALOGS」を参照してください。
  • 外部カタログの作成ステートメントを表示するには、「SHOW CREATE CATALOG」を参照してください。
  • StarRocksクラスタから外部カタログを削除するには、「DROP CATALOG」を参照してください。