Zurab Kiknavelidze
07/02/2026, 11:24 AMRocky
07/02/2026, 11:25 AMsql
CREATE EXTERNAL CATALOG hive_catalog
PROPERTIES (
"type" = "hive",
"aws.s3.use_instance_profile" = "true",
"aws.s3.region" = "us-west-2",
"hive.metastore.uris" = "thrift://<metastore_ip>:9083"
);
2. Assumed Role-based Authentication
This allows the cluster to assume a specific IAM role (cross-account or restricted role) using its own instance profile.
sql
CREATE EXTERNAL CATALOG iceberg_catalog
PROPERTIES (
"type" = "iceberg",
"aws.s3.use_instance_profile" = "true",
"aws.s3.iam_role_arn" = "arn:aws:iam::123456789012:role/target_s3_role",
"aws.s3.region" = "us-west-2",
"iceberg.catalog.type" = "glue",
"aws.glue.use_instance_profile" = "true",
"aws.glue.iam_role_arn" = "arn:aws:iam::123456789012:role/target_glue_role"
);
Key Considerations for Shared-Data Architecture
* Uniformity: In shared-data clusters, the properties defined in the CREATE EXTERNAL CATALOG command are used by both the Frontends (FE) for metadata discovery and the Compute Nodes (CN) for data scanning.
* EKS/K8s: If you are running on EKS, ensure your CN/FE pods are configured with IRSA (IAM Roles for Service Accounts) so that aws.s3.use_instance_profile correctly maps to the OIDC-provided credentials.
* Version Note: While 3.5.16 includes various stability and performance improvements (like those for WarehouseManager and Routine Load), IAM role support for catalogs has been a stable feature since StarRocks 2.5 and 3.0.
References
• table_design/data_distribution/Data_distribution.md
• faq/Sql_faq.md
• deployment/shared_data/feature-support-shared-data.md
• loading/loading_introduction/troubleshooting_loading.md