https://pulumi.com logo
#getting-started
Title
# getting-started
r

refined-quill-24998

02/02/2023, 7:22 AM
Hello Team, Could anybody tried to create aws glue catalog table with Apache Iceberg Integration in pulumi code. I tried to create using the below format, the table got created with wrong format. DDL which I was able to create in Athena console and successfully created:
Copy code
CREATE TABLE `t_temp_table_iceberg`
(
`col1` string,
`col2` double,
`col3` string,
`col4` BOOLEAN,
`col5` BOOLEAN
)
PARTITIONED BY(
col1,
col2
)
LOCATION '<s3://bucket-name/iceberg_location/>'
TBLPROPERTIES (
  'table_type'='ICEBERG',
  'format'='parquet'
)
Tried to deploy the same in pulumi but the table is created with wrong format similar like Hive table with partitions and not able to access in Athena( Not an issue with permissions verified). Can anyone help me with it.
Copy code
t_temp_table_iceberg = aws.glue.CatalogTable(
            resource_name="t_temp_table_iceberg",
            name="t_temp_table_iceberg",
            database_name=self.glue_catalog_iceberg_catalog_db.name,
            parameters={
                "table_type": 'ICEBERG',
                "format": "parquet"
            },
            storage_descriptor=aws.glue.CatalogTableStorageDescriptorArgs(
                columns=[
                    aws.glue.CatalogTableStorageDescriptorColumnArgs(
                        name="col1",
                        type="string",
                    ),
                    aws.glue.CatalogTableStorageDescriptorColumnArgs(
                        name="col2",
                        type="double",
                    ),
                    aws.glue.CatalogTableStorageDescriptorColumnArgs(
                        comment="",
                        name="col3",
                        type="String",
                    ),
                    aws.glue.CatalogTableStorageDescriptorColumnArgs(
                        comment="",
                        name="col4",
                        type="Boolean",
                    ),
                    aws.glue.CatalogTableStorageDescriptorColumnArgs(
                        comment="",
                        name="col5",
                        type="Boolean",
                    ),
                    aws.glue.CatalogTableStorageDescriptorColumnArgs(
                        comment="",
                        name="Substituted",
                        type="Boolean",
                    ),                ],
                location=f"s3://{self.curated_bucket_name}/iceberg_location/",
            ),
            partition_keys=[
                aws.glue.CatalogTablePartitionKeyArgs(
                    name="col1",
                    type="",
                    comment="",
                ),
                aws.glue.CatalogTablePartitionKeyArgs(
                    name="col2",
                    type="",
                    comment="",
                )
            ],
        )