我有以下Terraform配置来创建AWS Athena Iceberg表:
resource "aws_glue_catalog_table" "my_table" {
  name          = "my_table"
  database_name = "my_db"
  table_type = "TABLE"
  parameters = {
    "table_type" = "iceberg"
  }
  storage_descriptor {
    location      = "s3://my_data/my_table"
    input_format  = "org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat"
    output_format = "org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat"
    ser_de_info {
      name                  = "my-table-stream"
      serialization_library = "org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe"
      parameters = {
        "serialization.format" = 1
      }
    }
    columns {
      name = "some_date"
      type = "date"
    }
    columns {
      name = "some_name"
      type = "string"
    }
    columns {
      name    = "some_count"
      type    = "bigint"
    }
  }
}
运行时,将按预期创建表。然而,当我从Athena查询编辑器运行select * from my_table时,我收到以下错误:
GENERIC_USER_ERROR:检测到没有元数据位置的冰山类型表。请确保使用启用Iceberg的计算引擎(如Athena或EMR Spark)创建表,或使用Iceberg开源库创建表。不支持在Glue metastore中设置table_typeparameter以创建Iceberg表。
如何使用Terraform正确配置雅典娜冰山桌?