创建TC-Iceberg表

最近更新时间:2025-09-05 01:38:00

我的收藏

1. 接口描述

接口请求域名: dlc.tencentcloudapi.com 。

创建TIceberg表

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:CreateTcIcebergTable。
Version String 公共参数,本接口取值:2021-01-25。
Region String 公共参数,详见产品支持的 地域列表
TableBaseInfo TableBaseInfo 表基本信息
Columns.N Array of TColumn 表字段信息
DryRun Boolean 为true时只获取sql而不执行
示例值:false
Partitions.N Array of TPartition 表分区信息
Properties.N Array of Property 表属性信息

3. 输出参数

参数名称 类型 描述
SessionId String amoro的SessionId
示例值:66cb0000-50d2-49b1-99c6-12fb1566b7d0-SIMPLE-1305424723:DataLakeCatalog:zYBEmJFg:u7CzujF-test-catalog
SQL String 执行的sql
示例值:select 1;
DryRun Boolean 为true时只返回sql而不实际执行
示例值:false
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 创建tc-iceberg表

创建tc-iceberg表

输入示例

POST / HTTP/1.1
Host: dlc.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateInternalTable
<公共请求参数>

{
    "TableBaseInfo": {
        "DatasourceConnectionName": "DataLakeCatalog",
        "DatabaseName": "yuxinghe_test_0212",
        "TableName": "demo_tb",
        "SmartPolicy": {
            "BaseInfo": {
                "Uin": "100018379117",
                "AppId": "1305424723",
                "PolicyType": "Table",
                "Catalog": "DataLakeCatalog",
                "Database": "yuxinghe_test_0212",
                "Table": "demo_tb"
            },
            "Policy": {
                "Inherit": "none",
                "Resources": [
                    {
                        "Name": "277-spark35-test-yuxinghe",
                        "ResourceType": "SQL",
                        "AttributionType": "group",
                        "ResourceGroupName": "test-277-group"
                    }
                ],
                "Written": {
                    "WrittenEnable": "enable"
                },
                "Lifecycle": {
                    "LifecycleEnable": "enable",
                    "Expiration": 30,
                    "ExpiredFieldFormat": "yyyy-MM-dd",
                    "ExpiredField": "col1"
                },
                "Index": {
                    "IndexEnable": "disable"
                },
                "ChangeTable": {
                    "DataRetentionTime": 7
                }
            }
        },
        "PrimaryKeys": [
            "col1"
        ],
        "TableFormat": "TC-ICEBERG"
    },
    "Columns": [
        {
            "Name": "col1",
            "Type": "string"
        },
        {
            "Name": "col2",
            "Type": "int"
        }
    ],
    "Partitions": [
        {
            "Name": "col1",
            "Transform": "identity"
        }
    ],
    "Properties": [],
    "DryRun": false
}

输出示例

{
    "Response": {
        "DryRun": false,
        "RequestId": "deb07535-ccd2-4574-846b-d675249a7f47",
        "SQL": "CREATE TABLE IF NOT EXISTS yuxinghe_test_0212.demo_tb ( col1 string, col2 int, primary key(col1)) USING MIXED_ICEBERG PARTITIONED BY (col1) TBLPROPERTIES ('change.data.ttl.minutes'='10080', 'clean-dangling-delete-files.enabled'='true', 'clean-orhan-files.interval'='1440', 'clean-orphan-file.enabled'='true', 'data-expire.datetime-string-pattern'='yyyy-MM-dd', 'data-expire.enabled'='true', 'data-expire.field'='col1', 'data-expire.retention-time'='30d', 'dlc_sub_uin'='100018379117', 'lakehouse.storage.type'='lakefs', 'optimizing.engine.name'='277-spark35-test-yuxinghe', 'optimizing.engine.resource.group.name'='test-277-group', 'self-optimizing.enabled'='true', 'self-optimizing.group'='dlc_1305424723_277-spark35-test-yux_opti_grp', 'self-optimizing.minor.trigger.file-count'='5', 'self-optimizing.target-size'='134217728', 'smart-optimizer.inherit'='none', 'snapshot-expire.interval'='600', 'snapshot.base.keep.count'='5', 'snapshot.base.keep.minutes'='2880', 'table-expire.enabled'='true', 'write.distribution-mode'='hash', 'write.metadata.delete-after-commit.enabled'='true', 'write.metadata.previous-versions-max'='100', 'write.metadata.metrics.default'='full');",
        "SessionId": "09b4d457-c0f7-45c7-bc0e-46398322f0dc-SIMPLE-1305424723:DataLakeCatalog:zYBEmJFg:u7CzujF-DataLakeCatalog"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation 操作失败。
InternalError 内部错误。
InternalError.InternalSystemException 业务系统异常,请重试或提工单联系我们。
InvalidParameter 参数错误。
InvalidParameter.InvalidColumnNameLength 字段名称设置错误,字段名称必须小于等于128字节
InvalidParameter.InvalidColumnNumber 字段个数设置错误,字段个数必须小于等于4096
InvalidParameter.InvalidDecimalType DecimalType设置非法,Precision必须大于等于Scale,且Precision必须小于38
InvalidParameter.InvalidTableNameLength 表名设置错误,表名长度必须小于等于128字节
InvalidParameter.ParameterNotFoundOrBeNone 找不到参数或参数为空
ResourceUnavailable 资源不可用。
UnauthorizedOperation 未授权操作。
UnsupportedOperation 操作不支持。