Skip to main content

AWS Glue

This document describes the parameter configuration when using AWS Glue Catalog to access Iceberg tables or Hive tables through CREATE CATALOG.

Supported Glue Catalog Types

AWS Glue Catalog currently supports two types of Catalogs:

Catalog TypeType Identifier (type)Description
HiveglueCatalog for connecting to Hive Metastore
IcebergglueCatalog for connecting to Iceberg table format
IcebergrestCatalog for connecting to Iceberg via Glue Rest

This document provides detailed descriptions of the parameters for each type to help users with configuration.

Hive Glue Catalog

Hive Glue Catalog is used to access Hive tables through AWS Glue's Hive Metastore compatible interface. Configuration parameters are as follows:

Parameter NameDescriptionRequiredDefault Value
typeFixed value hmsYesNone
hive.metastore.typeFixed value glueYesNone
glue.regionAWS Glue region, e.g., us-east-1YesNone
glue.endpointAWS Glue endpoint, e.g., https://glue.us-east-1.amazonaws.comYesNone
glue.access_keyAWS Access Key IDYesEmpty
glue.secret_keyAWS Secret Access KeyYesEmpty
glue.catalog_idGlue Catalog ID (not yet supported)NoEmpty
glue.role_arnIAM Role ARN for accessing Glue (not yet supported)NoEmpty
glue.external_idIAM External ID for accessing Glue (not yet supported)NoEmpty

Example

CREATE CATALOG hive_glue_catalog WITH (
'type' = 'hms',
'hive.metastore.type' = 'glue',
'glue.region' = 'us-east-1',
'glue.endpoint' = 'https://glue.us-east-1.amazonaws.com',
'glue.access_key' = 'YOUR_ACCESS_KEY',
'glue.secret_key' = 'YOUR_SECRET_KEY'
);

Iceberg Glue Catalog

Iceberg Glue Catalog accesses Glue through the Glue Client. Configuration parameters are as follows:

Parameter NameDescriptionRequiredDefault Value
typeFixed value icebergYesNone
iceberg.catalog.typeFixed value glueYesNone
warehouseIceberg warehouse path, e.g., s3://my-bucket/iceberg-warehouse/Yess3://doris
glue.regionAWS Glue region, e.g., us-east-1YesNone
glue.endpointAWS Glue endpoint, e.g., https://glue.us-east-1.amazonaws.comYesNone
glue.access_keyAWS Access Key IDYesEmpty
glue.secret_keyAWS Secret Access KeyYesEmpty
glue.catalog_idGlue Catalog ID (not yet supported)NoEmpty
glue.role_arnIAM Role ARN for accessing Glue (not yet supported)NoEmpty
glue.external_idIAM External ID for accessing Glue (not yet supported)NoEmpty

Example

CREATE CATALOG iceberg_glue_catalog WITH (
'type' = 'iceberg',
'iceberg.catalog.type' = 'glue',
'glue.region' = 'us-east-1',
'glue.endpoint' = 'https://glue.us-east-1.amazonaws.com',
'glue.access_key' = '<YOUR_ACCESS_KEY>',
'glue.secret_key' = '<YOUR_SECRET_KEY>'
);

Iceberg Glue Rest Catalog

Iceberg Glue Rest Catalog accesses Glue through the Glue Rest Catalog interface. Currently only supports Iceberg tables stored in AWS S3 Table Bucket. Configuration parameters are as follows:

Parameter NameDescriptionRequiredDefault Value
typeFixed value icebergYesNone
iceberg.catalog.typeFixed value restYesNone
iceberg.rest.uriGlue Rest service endpoint, e.g., https://glue.ap-east-1.amazonaws.com/icebergYesNone
warehouseIceberg warehouse path, e.g., <account_id>:s3tablescatalog/<bucket_name>YesNone
iceberg.rest.sigv4-enabledEnable V4 signature format, fixed value trueYesNone
iceberg.rest.signing-nameSignature type, fixed value glueYesEmpty
iceberg.rest.access-key-idAccess Key for accessing Glue (also used for S3 Bucket access)YesEmpty
iceberg.rest.secret-access-keySecret Key for accessing Glue (also used for S3 Bucket access)YesEmpty
iceberg.rest.signing-regionAWS Glue region, e.g., us-east-1YesEmpty

Example

CREATE CATALOG glue_s3 PROPERTIES (
'type' = 'iceberg',
'iceberg.catalog.type' = 'rest',
'iceberg.rest.uri' = 'https://glue.<region>.amazonaws.com/iceberg',
'iceberg.rest.warehouse' = '<acount_id>:s3tablescatalog/<s3_table_bucket_name>',
'iceberg.rest.sigv4-enabled' = 'true',
'iceberg.rest.signing-name' = 'glue',
'iceberg.rest.access-key-id' = '<ak>',
'iceberg.rest.secret-access-key' = '<sk>',
'iceberg.rest.signing-region' = '<region>'
);