更新表模型
功能介绍
在关系建模中更新一个表模型及其属性,包括逻辑实体和物理表。
调用方法
请参见如何调用API。
URI
PUT /v2/{project_id}/design/table-model
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID,获取方法请参见项目ID和账号ID。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
IAM Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值) 使用Token认证时必选。 |
workspace |
是 |
String |
工作空间ID,获取方法请参见实例ID和工作空间ID。 |
X-Project-Id |
否 |
String |
项目ID,获取方法请参见项目ID和账号ID。 多project场景采用AK/SK认证的接口请求,则该字段必选。 |
Content-Type |
否 |
String |
默认值:application/json;charset=UTF-8 可选,有Body体的情况下必选,没有Body体则无需填写和校验。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
是 |
String |
编码,填写String类型替代Long类型。 |
model_id |
是 |
String |
所属关系建模的模型ID,填写String类型替代Long类型。 |
parent_table_id |
否 |
String |
父表ID,填写String类型替代Long类型。 |
model |
否 |
WorkspaceVO object |
模型信息。 |
data_format |
否 |
String |
数据格式。 |
obs_bucket |
否 |
String |
obs桶。 |
obs_location |
否 |
String |
obs路径。 |
configs |
否 |
String |
其他配置。 |
owner |
否 |
String |
责任人。 |
tb_name |
是 |
String |
表名。 |
dw_id |
否 |
String |
数据连接ID。 |
db_name |
否 |
String |
数据库名。 |
queue_name |
否 |
String |
dli数据连接执行sql所需的队列,数据连接类型为DLI时必须。 |
schema |
否 |
String |
DWS类型需要。 |
extend_info |
否 |
String |
扩展信息。 |
logic_tb_name |
是 |
String |
逻辑实体名。 |
description |
是 |
String |
描述。 |
status |
否 |
String |
实体的发布状态,只读,创建和更新时无需填写。 枚举值:
|
logic_tb_id |
否 |
String |
逻辑实体的ID,填写String类型替代Long类型。 |
biz_catalog_id |
否 |
String |
归属的业务分类的ID,填写String类型替代Long类型。 |
catalog_path |
否 |
String |
归属的业务分类的路径,格式: {"l1Id":"958408897973161984","l2Id":"958408897973161985","l3Id":"958408897973161986"}。 |
approval_info |
否 |
ApprovalVO object |
审批信息,只读参数。业务对象最近一次的审批信息,包括审批的业务详情、审核人信息、审核时间等。 |
new_biz |
否 |
BizVersionManageVO object |
业务版本管理,只读。 |
attributes |
是 |
Array of TableModelAttributeVO objects |
表属性信息。 |
mappings |
否 |
Array of TableMappingVO objects |
表映射信息。 |
relations |
否 |
Array of RelationVO objects |
关系。 |
dw_type |
是 |
String |
数据连接类型,对应表所在的数仓类型,取值可以为DWS、MRS_HIVE、POSTGRESQL、MRS_SPARK、CLICKHOUSE、MYSQL、ORACLE和DORIS等。 |
dw_name |
否 |
String |
数据连接名称,只读,创建和更新时无需填写。 |
l2_id |
否 |
String |
主题域ID。 |
partition_conf |
否 |
String |
分区表达式 |
dlf_task_id |
否 |
String |
DLF作业ID。 |
use_recently_partition |
否 |
Boolean |
是否使用最新分区。 |
reversed |
否 |
Boolean |
是否是逆向的。 |
dirty_out_switch |
否 |
Boolean |
异常数据输出开关。 |
dirty_out_database |
否 |
String |
异常数据输出库。 |
dirty_out_prefix |
否 |
String |
异常表前缀。 |
dirty_out_suffix |
否 |
String |
异常表后缀。 |
quality_owner |
否 |
String |
质量责任人。 |
quality_id |
否 |
String |
质量ID,填写String类型替代Long类型。 |
distribute |
否 |
String |
DISTRIBUTE BY [HASH(column)|REPLICATION]。 枚举值:
|
distribute_column |
否 |
String |
DISTRIBUTE BY HASH column. |
alias |
否 |
String |
别名。 |
self_defined_fields |
否 |
Array of SelfDefinedFieldVO objects |
自定义项。 |
has_related_physical_table |
否 |
Boolean |
是否关联了物理表 |
has_related_logic_table |
否 |
Boolean |
是否关联了逻辑实体 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
编号,填写String类型替代Long类型。 |
name |
是 |
String |
工作区名字。 |
description |
否 |
String |
描述。 |
is_physical |
否 |
Boolean |
是否为物理表。 |
frequent |
否 |
Boolean |
是否为常用。 |
top |
否 |
Boolean |
分层治理。 |
level |
否 |
String |
数据治理分层。 枚举值:
|
dw_type |
否 |
String |
数据连接类型,对应表所在的数仓类型,取值可以为DWS、MRS_HIVE、POSTGRESQL、MRS_SPARK、CLICKHOUSE、MYSQL、ORACLE和DORIS等。 |
create_by |
否 |
String |
创建人。 |
update_by |
否 |
String |
更新人。 |
type |
是 |
String |
工作区类型枚举。 枚举值:
|
biz_catalog_ids |
否 |
String |
关联的业务分层的ID列表 {"l1Ids":[],"l2Ids":[],"l3Ids":[]}。 |
databases |
否 |
Array of strings |
数据库名称数组。 |
table_model_prefix |
否 |
String |
模型校验前缀,长度不超过100,数字字母下划线组成,字母开头 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
审批单ID,填写String类型替代Long类型。 |
tenant_id |
否 |
String |
项目ID,获取方式参考接口路径参数“project_id”。 |
name_ch |
否 |
String |
业务中文名。 |
name_en |
否 |
String |
业务英文名。 |
biz_id |
否 |
String |
业务ID,填写String类型替代Long类型。 |
biz_type |
否 |
String |
业务实体类型。 枚举值:
|
biz_info |
否 |
String |
序列化之后的业务详情,类型是string。 |
biz_info_obj |
否 |
Object |
业务详情,类型是object。 |
biz_version |
否 |
Integer |
业务版本。 |
biz_status |
否 |
String |
实体的发布状态,只读,创建和更新时无需填写。 枚举值:
|
approval_status |
否 |
String |
业务审批状态,只读。 枚举值:
|
approval_type |
否 |
String |
业务审核类型。 枚举值:
|
submit_time |
否 |
String |
提交时间。 |
create_by |
否 |
String |
创建者。 |
l1 |
否 |
String |
主题域分组中文名,只读,创建和更新时无需填写。 |
l2 |
否 |
String |
主题域中文名,只读,创建和更新时无需填写。 |
l3 |
否 |
String |
业务对象中文名,只读,创建和更新时无需填写。 |
approval_time |
否 |
String |
审核时间。 |
approver |
否 |
String |
审核人。 |
|
否 |
String |
审核人邮箱。 |
msg |
否 |
String |
审核信息。 |
directory_path |
否 |
String |
目录树。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
ID信息,填写String类型替代Long类型。 |
biz_type |
否 |
String |
业务实体类型。 枚举值:
|
biz_id |
否 |
String |
业务ID,填写String类型替代Long类型。 |
biz_info |
否 |
String |
业务对象信息。 |
status |
否 |
String |
实体的发布状态,只读,创建和更新时无需填写。 枚举值:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
编码,填写String类型替代Long类型。 |
name_en |
是 |
String |
字段名。 |
name_ch |
是 |
String |
业务属性。 |
description |
否 |
String |
描述。 |
obs_location |
否 |
String |
obs路径,子路径。 |
create_by |
否 |
String |
创建人。 |
update_by |
否 |
String |
更新人。 |
data_type |
是 |
String |
字段类型。 |
data_type_extend |
否 |
String |
数据类型扩展字段。 |
is_primary_key |
是 |
Boolean |
是否主键。 |
is_partition_key |
否 |
Boolean |
是否分区键。 |
is_foreign_key |
否 |
Boolean |
是否外键。 |
extend_field |
否 |
Boolean |
是否继承的属性。 |
not_null |
否 |
Boolean |
是否不为空。 |
ordinal |
否 |
Integer |
序号。 |
table_model_id |
否 |
String |
所属关系建模的模型ID,填写String类型替代Long类型。 |
stand_row_id |
否 |
String |
关联的数据标准的ID,填写String类型替代Long类型。 |
alias |
否 |
String |
别名。 |
self_defined_fields |
否 |
Array of SelfDefinedFieldVO objects |
自定义项。 |
code |
否 |
String |
逻辑属性编码 |
related_logic_attr_id |
否 |
String |
关联逻辑属性ID,填写String类型替代Long类型。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
编码,填写String类型替代Long类型。 |
name |
是 |
String |
名称。 |
description |
否 |
String |
描述。 |
target_table_id |
否 |
String |
目的表ID,填写String类型替代Long类型。 |
src_model_id |
否 |
String |
来源表在关系建模中的模型ID,填写String类型替代Long类型。 |
src_model_name |
否 |
String |
来源模型名称。 |
view_text |
否 |
String |
采集的视图来源,dws视图逆向使用。 |
target_table_name |
否 |
String |
目的表名称。 |
details |
否 |
Array of TableMappingDetailVO objects |
详情。 |
source_tables |
否 |
Array of MappingSourceTableVO objects |
映射的表信息。 |
source_fields |
否 |
Array of MappingSourceFieldVO objects |
映射的字段信息。 |
create_time |
否 |
String |
创建时间,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
否 |
String |
更新时间,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
create_by |
否 |
String |
创建人。 |
update_by |
否 |
String |
更新人。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
编码,填写String类型替代Long类型。 |
mapping_id |
否 |
String |
名称。 |
target_attr_id |
否 |
String |
目的字段ID,填写String类型替代Long类型。 |
target_attr_name |
是 |
String |
目的字段排序。 |
src_table_ids |
否 |
String |
源表ID。 |
src_attr_ids |
否 |
String |
源表字段ID。 |
remark |
否 |
String |
备注。 |
create_time |
否 |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
否 |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
create_by |
否 |
String |
创建人。 |
update_by |
否 |
String |
更新人。 |
target_attr |
否 |
Object |
目标属性。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
table1_id |
是 |
String |
表1ID,填写String类型替代Long类型。 |
table2_id |
否 |
String |
表2ID,填写String类型替代Long类型。 |
table1_name |
是 |
String |
表1名称。 |
table2_name |
否 |
String |
表2名称。 |
join_type |
是 |
String |
关联类型。 枚举值:
|
join_fields |
是 |
Array of MappingJoinFieldVO objects |
on条件。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
field1_id |
是 |
String |
属性1ID,填写String类型替代Long类型。 |
field2_id |
是 |
String |
属性2ID,填写String类型替代Long类型。 |
field1_name |
是 |
String |
属性1名称。 |
field2_name |
是 |
String |
属性2名称。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
target_field_id |
否 |
String |
目标字段ID,当前表的某个字段,填写String类型替代Long类型。 |
target_field_name |
是 |
String |
目标字段编码。 |
field_ids |
否 |
String |
来源字段ID,多个ID以逗号分隔。 |
transform_expression |
否 |
String |
转换表达式。 |
field_names |
否 |
Array of strings |
来源字段名称列表。 |
changed |
否 |
Boolean |
字段是否发生变化。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
id |
否 |
String |
编码,填写String类型替代Long类型。 |
source_table_id |
否 |
String |
源表ID,填写String类型替代Long类型。 |
target_table_id |
否 |
String |
目标表ID,填写String类型替代Long类型。 |
name |
是 |
String |
关系名称。 |
source_table_name |
否 |
String |
源表名称。 |
target_table_name |
否 |
String |
目的表名称。 |
role |
否 |
String |
角色。 |
tenant_id |
否 |
String |
租户ID。 |
source_type |
否 |
String |
关系类型,只读。 枚举值:
|
target_type |
否 |
String |
关系类型,只读。 枚举值:
|
create_by |
否 |
String |
创建人。 |
update_by |
否 |
String |
更新人。 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
data |
data object |
data,统一的返回结果的最外层数据结构。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
model_id |
String |
所属关系建模的模型ID,填写String类型替代Long类型。 |
parent_table_id |
String |
父表ID,填写String类型替代Long类型。 |
parent_table_name |
String |
父表名称,只读。 |
parent_table_code |
String |
父表编码,只读。 |
related_logic_table_id |
String |
关联逻辑实体的ID,填写String类型替代Long类型。 |
related_logic_table_name |
String |
关联逻辑实体的名称。 |
related_logic_table_model_id |
String |
关联逻辑实体的模型ID,填写String类型替代Long类型。 |
related_logic_table_model_name |
String |
关联逻辑实体的模型名称。 |
model |
WorkspaceVO object |
模型信息。 |
data_format |
String |
数据格式。 |
obs_bucket |
String |
obs桶。 |
obs_location |
String |
外表路径 |
configs |
String |
其他配置。 |
table_type |
String |
表类型,只读。 |
owner |
String |
负责人。 |
tb_name |
String |
表名。 |
dw_id |
String |
数据连接ID。 |
db_name |
String |
数据库名。 |
queue_name |
String |
dli数据连接执行sql所需的队列,数据连接类型为DLI时必须。 |
schema |
String |
DWS类型需要。 |
extend_info |
String |
扩展信息。 |
tb_guid |
String |
表物化后的guid,只读。 |
tb_id |
String |
数据表ID,只读。 |
logic_tb_name |
String |
逻辑实体名。 |
logic_tb_guid |
String |
逻辑实体的guid,只读。 |
description |
String |
描述。 |
status |
String |
实体的发布状态,只读,创建和更新时无需填写。 枚举值:
|
logic_tb_id |
String |
逻辑实体的ID,填写String类型替代Long类型。 |
biz_catalog_id |
String |
归属的业务分类的id,填写String类型替代Long类型。 |
catalog_path |
String |
归属的业务分类的路径 {"l1Id":"","l2Id":"","l3Id":""}。 |
create_by |
String |
创建人,只读。 |
update_by |
String |
更新人,只读。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
tags |
Array of TagRecordVO objects |
表标签,只读。 |
approval_info |
ApprovalVO object |
审批信息,只读参数。业务对象最近一次的审批信息,包括审批的业务详情、审核人信息、审核时间等。 |
new_biz |
BizVersionManageVO object |
业务版本管理,只读。 |
attributes |
Array of TableModelAttributeVO objects |
表属性信息。 |
mappings |
Array of TableMappingVO objects |
表映射信息。 |
relations |
Array of RelationVO objects |
关系。 |
dw_type |
String |
数据连接类型,对应表所在的数仓类型,取值可以为DWS、MRS_HIVE、POSTGRESQL、MRS_SPARK、CLICKHOUSE、MYSQL、ORACLE和DORIS等。 |
dw_name |
String |
数据连接名称,只读,创建和更新时无需填写。 |
l1 |
String |
主题域分组中文名,只读,创建和更新时无需填写。 |
l2 |
String |
主题域中文名,只读,创建和更新时无需填写。 |
l3 |
String |
业务对象中文名,只读,创建和更新时无需填写。 |
l1_id |
String |
主题域分组ID,只读,填写String类型替代Long类型。 |
l2_id |
String |
主题域ID。 |
l3_id |
String |
业务对象ID,只读,填写String类型替代Long类型。 |
partition_conf |
String |
分区表达式。 |
dlf_task_id |
String |
DLF作业ID。 |
use_recently_partition |
Boolean |
是否使用最新分区。 |
reversed |
Boolean |
是否是逆向的。 |
dirty_out_switch |
Boolean |
异常数据输出开关。 |
dirty_out_database |
String |
异常数据输出库。 |
dirty_out_prefix |
String |
异常表前缀。 |
dirty_out_suffix |
String |
异常表后缀。 |
quality_owner |
String |
质量责任人。 |
quality_id |
String |
质量ID,填写String类型替代Long类型。 |
distribute |
String |
DISTRIBUTE BY [HASH(column)|REPLICATION]。 枚举值:
|
distribute_column |
String |
DISTRIBUTE BY HASH column. |
is_partition |
Boolean |
是否分区表,只读。 |
physical_table |
String |
生产环境创建表状态。 |
dev_physical_table |
String |
开发环境创建表状态。 |
technical_asset |
String |
技术资产同步状态,只读。 |
business_asset |
String |
业务资产同步状态,只读。 |
meta_data_link |
String |
资产关联状态,只读。 |
data_quality |
String |
质量作业状态,只读。 |
summary_status |
String |
同步整体状态,只读。 |
dev_version |
String |
开发环境版本,填写String类型替代Long类型。 |
prod_version |
String |
生产环境版本,填写String类型替代Long类型。 |
dev_version_name |
String |
开发环境版本名称。 |
prod_version_name |
String |
生产环境版本名称。 |
env_type |
String |
开发生产环境类型。 枚举值:
|
alias |
String |
别名。 |
self_defined_fields |
Array of SelfDefinedFieldVO objects |
自定义项。 |
code |
String |
编码 |
has_related_physical_table |
Boolean |
是否存在关联物理表。 |
has_related_logic_table |
Boolean |
是否存在关联逻辑实体。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编号,填写String类型替代Long类型。 |
name |
String |
工作区名字。 |
description |
String |
描述。 |
is_physical |
Boolean |
是否为物理表。 |
frequent |
Boolean |
是否为常用。 |
top |
Boolean |
分层治理。 |
level |
String |
数据治理分层。 枚举值:
|
dw_type |
String |
数据连接类型,对应表所在的数仓类型,取值可以为DWS、MRS_HIVE、POSTGRESQL、MRS_SPARK、CLICKHOUSE、MYSQL、ORACLE和DORIS等。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
type |
String |
工作区类型枚举。 枚举值:
|
biz_catalog_ids |
String |
关联的业务分层的ID列表 {"l1Ids":[],"l2Ids":[],"l3Ids":[]}。 |
databases |
Array of strings |
数据库名称数组。 |
table_model_prefix |
String |
模型校验前缀,长度不超过100,数字字母下划线组成,字母开头 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
tag_id |
String |
标签ID,填写String类型替代Long类型。 |
tag_name |
String |
标签名称。 |
biz_id |
String |
实体ID,填写String类型替代Long类型。 |
biz_type |
String |
业务实体类型。 枚举值:
|
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
审批单ID,填写String类型替代Long类型。 |
tenant_id |
String |
项目ID,获取方式参考接口路径参数“project_id”。 |
name_ch |
String |
业务中文名。 |
name_en |
String |
业务英文名。 |
biz_id |
String |
业务ID,填写String类型替代Long类型。 |
biz_type |
String |
业务实体类型。 枚举值:
|
biz_info |
String |
序列化之后的业务详情,类型是string。 |
biz_info_obj |
Object |
业务详情,类型是object。 |
biz_version |
Integer |
业务版本。 |
biz_status |
String |
实体的发布状态,只读,创建和更新时无需填写。 枚举值:
|
approval_status |
String |
业务审批状态,只读。 枚举值:
|
approval_type |
String |
业务审核类型。 枚举值:
|
submit_time |
String |
提交时间。 |
create_by |
String |
创建者。 |
l1 |
String |
主题域分组中文名,只读,创建和更新时无需填写。 |
l2 |
String |
主题域中文名,只读,创建和更新时无需填写。 |
l3 |
String |
业务对象中文名,只读,创建和更新时无需填写。 |
approval_time |
String |
审核时间。 |
approver |
String |
审核人。 |
|
String |
审核人邮箱。 |
msg |
String |
审核信息。 |
directory_path |
String |
目录树。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
name_en |
String |
字段名。 |
name_ch |
String |
业务属性。 |
description |
String |
描述。 |
obs_location |
String |
obs路径,子路径。 |
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
data_type |
String |
字段类型。 |
domain_type |
String |
字段类型所属域。 枚举值:
|
data_type_extend |
String |
数据类型扩展字段。 |
is_primary_key |
Boolean |
是否主键。 |
is_partition_key |
Boolean |
是否分区键。 |
is_foreign_key |
Boolean |
是否外键。 |
extend_field |
Boolean |
是否继承的属性。 |
not_null |
Boolean |
是否不为空。 |
ordinal |
Integer |
序号。 |
table_model_id |
String |
所属关系建模的模型ID,填写String类型替代Long类型。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
tags |
Array of TagVO objects |
表标签,只读。 |
secrecy_levels |
Array of SecrecyLevelVO objects |
密级 |
stand_row_id |
String |
关联的数据标准的ID,填写String类型替代Long类型。 |
stand_row_name |
String |
关联的数据标准名称,只读。 |
quality_infos |
Array of QualityInfoVO objects |
质量信息,只读。 |
alias |
String |
别名。 |
self_defined_fields |
Array of SelfDefinedFieldVO objects |
自定义项。 |
code |
String |
逻辑属性编码 |
related_logic_attr_id |
String |
关联逻辑属性ID,填写String类型替代Long类型。 |
related_logic_attr_name |
String |
关联逻辑实体属性中文名称 |
related_logic_attr_name_en |
String |
关联逻辑实体属性英文名称 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
name |
String |
标签名。 |
description |
String |
描述。 |
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
new_biz |
BizVersionManageVO object |
业务版本管理,只读。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
密级ID,填写String类型替代Long类型。 |
uuid |
String |
数据安全主键。 |
name |
String |
密级名。 |
slevel |
Integer |
密级等级。 |
description |
String |
密级描述。 |
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
new_biz |
BizVersionManageVO object |
业务版本管理,只读。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
ID信息,填写String类型替代Long类型。 |
biz_type |
String |
业务实体类型。 枚举值:
|
biz_id |
String |
业务ID,填写String类型替代Long类型。 |
biz_info |
String |
业务对象信息。 |
status |
String |
实体的发布状态,只读,创建和更新时无需填写。 枚举值:
|
biz_version |
Integer |
业务版本,只读。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码ID,填写String类型替代Long类型。 |
table_id |
String |
表ID,只读,填写String类型替代Long类型。 |
attr_id |
String |
属性ID,只读,填写String类型替代Long类型。 |
biz_type |
String |
业务实体类型。 枚举值:
|
data_quality_id |
String |
质量ID,填写String类型替代Long类型。 |
show_control |
Integer |
是否要显示正则表达式。 |
data_quality_name |
String |
质量名称。 |
alert_conf |
String |
告警配置。 |
expression |
String |
正则相关校验规则中正则配置。 |
extend_info |
String |
扩展信息。 |
from_standard |
Boolean |
是否来源于数据标准质量配置,只读。 |
result_description |
String |
结果说明。 |
create_by |
String |
创建人,只读。 |
update_by |
String |
更新人,只读。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
name |
String |
名称。 |
description |
String |
描述。 |
target_table_id |
String |
目的表ID,填写String类型替代Long类型。 |
src_model_id |
String |
来源表在关系建模中的模型ID,填写String类型替代Long类型。 |
src_model_name |
String |
来源模型名称。 |
view_text |
String |
采集的视图来源,dws视图逆向使用。 |
target_table_name |
String |
目的表名称。 |
details |
Array of TableMappingDetailVO objects |
详情。 |
source_tables |
Array of MappingSourceTableVO objects |
映射的表信息。 |
source_fields |
Array of MappingSourceFieldVO objects |
映射的字段信息。 |
create_time |
String |
创建时间,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
mapping_id |
String |
名称。 |
target_attr_id |
String |
目的字段ID,填写String类型替代Long类型。 |
target_attr_name |
String |
目的字段排序。 |
src_table_ids |
String |
源表ID。 |
src_table_names |
Array of strings |
源表名称数组,只读。 |
src_table_db_names |
Array of strings |
源表db名称数组,只读。 |
src_table_model_ids |
Array of strings |
源表在关系建模中的模型ID数组,只读,填写String类型替代Long类型。 |
src_table_id_list |
Array of strings |
源表ID数组,只读,填写String类型替代Long类型。 |
src_attr_ids |
String |
源表字段ID。 |
src_attr_names |
Array of strings |
源表字段名称数组,只读。 |
src_attr_id_list |
Array of strings |
源表字段ID数组,只读,填写String类型替代Long类型。 |
remark |
String |
备注。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
target_attr |
Object |
目标属性。 |
参数 |
参数类型 |
描述 |
---|---|---|
table1_id |
String |
表1ID,填写String类型替代Long类型。 |
table2_id |
String |
表2ID,填写String类型替代Long类型。 |
table1_name |
String |
表1名称。 |
table2_name |
String |
表2名称。 |
join_type |
String |
关联类型。 枚举值:
|
join_fields |
Array of MappingJoinFieldVO objects |
on条件。 |
参数 |
参数类型 |
描述 |
---|---|---|
field1_id |
String |
属性1ID,填写String类型替代Long类型。 |
field2_id |
String |
属性2ID,填写String类型替代Long类型。 |
field1_name |
String |
属性1名称。 |
field2_name |
String |
属性2名称。 |
参数 |
参数类型 |
描述 |
---|---|---|
target_field_id |
String |
目标字段ID,当前表的某个字段,填写String类型替代Long类型。 |
target_field_name |
String |
目标字段编码。 |
field_ids |
String |
来源字段ID,多个ID以逗号分隔。 |
transform_expression |
String |
转换表达式。 |
field_names |
Array of strings |
来源字段名称列表。 |
changed |
Boolean |
字段是否发生变化。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
source_table_id |
String |
源表ID,填写String类型替代Long类型。 |
target_table_id |
String |
目标表ID,填写String类型替代Long类型。 |
name |
String |
关系名称。 |
source_table_name |
String |
源表名称。 |
target_table_name |
String |
目的表名称。 |
role |
String |
角色。 |
tenant_id |
String |
租户ID。 |
source_type |
String |
关系类型,只读。 枚举值:
|
target_type |
String |
关系类型,只读。 枚举值:
|
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
mappings |
Array of RelationMappingVO objects |
表属性信息,只读。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
编码,填写String类型替代Long类型。 |
relation_id |
String |
关系ID,填写String类型替代Long类型。 |
source_field_id |
String |
源字段ID,填写String类型替代Long类型。 |
target_field_id |
String |
目标字段ID,填写String类型替代Long类型。 |
source_field_name |
String |
源表名称。 |
target_field_name |
String |
目的表名称。 |
create_by |
String |
创建人。 |
update_by |
String |
更新人。 |
create_time |
String |
创建时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
update_time |
String |
更新时间,只读,格式遵循RFC3339,精确到秒,UTC时区,即yyyy-mm-ddTHH:MM:SSZ,如1970-01-01T00:00:00Z。 |
参数 |
参数类型 |
描述 |
---|---|---|
fd_name_ch |
String |
自定义项中文名。 |
fd_name_en |
String |
自定义项英文名。 |
not_null |
Boolean |
是否必填。 |
fd_value |
String |
属性值。 |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码,如DS.6000,请求处理失败。 |
error_msg |
String |
错误信息。 |
data |
Object |
返回的数据信息。 |
状态码: 401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码,如DS.6000,请求处理失败。 |
error_msg |
String |
错误信息。 |
data |
Object |
返回的数据信息。 |
状态码: 403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码,如DS.6000,请求处理失败。 |
error_msg |
String |
错误信息。 |
data |
Object |
返回的数据信息。 |
请求示例
根据请求参数,更新物理表。
PUT https://{endpoint}/v2/{project_id}/design/table-model { "id" : "1231932180633112576", "model_id" : "1208730797675311104", "parent_table_id" : null, "parent_table_name" : null, "parent_table_code" : null, "model" : { "id" : "1208730797675311104", "name" : "xingneng2", "description" : "", "is_physical" : true, "frequent" : false, "top" : false, "level" : null, "dw_type" : "MRS_HIVE", "create_time" : "2024-02-18T11:04:39+08:00", "update_time" : "2024-02-18T11:04:39+08:00", "create_by" : "test_uesr", "update_by" : "test_uesr", "type" : "THIRD_NF", "biz_catalog_ids" : null, "databases" : null, "table_model_prefix" : "" }, "data_format" : "Parquet", "obs_bucket" : null, "obs_location" : null, "configs" : "{}", "table_type" : "HIVE_TABLE", "owner" : "", "tb_name" : "test_update_table_model", "dw_id" : "0fafdd43a342436e87e42d7217d26679", "db_name" : null, "queue_name" : null, "schema" : null, "extend_info" : "{\"dirtyOutDatabase\":\"\",\"dirtyOutPrefix\":\"\",\"dirtyOutSuffix\":\"\",\"dirtyOutSwitch\":\"false\"}", "tb_guid" : null, "tb_id" : null, "logic_tb_name" : "test_update_table_model", "logic_tb_guid" : null, "description" : "无", "status" : "DRAFT", "logic_tb_id" : null, "biz_catalog_id" : "958408897973161984", "catalog_path" : "{\"l1Id\":\"958408897973161984\",\"l2Id\":\"\",\"l3Id\":\"\",\"l4Id\":\"\",\"l5Id\":\"\",\"l6Id\":\"\",\"l7Id\":\"\"}", "create_by" : "test_uesr", "update_by" : "test_uesr", "create_time" : "2024-04-22T11:38:40+08:00", "update_time" : "2024-04-22T11:38:40+08:00", "tags" : [ { "name" : "tag1" } ], "approval_info" : null, "new_biz" : null, "attributes" : [ { "id" : "1231932180754747392", "name_en" : "col_a", "name_ch" : "col_a", "description" : "", "obs_location" : null, "create_by" : null, "update_by" : null, "data_type" : "STRING", "domain_type" : "STRING", "data_type_extend" : "", "is_primary_key" : false, "is_partition_key" : false, "is_foreign_key" : false, "extend_field" : false, "not_null" : false, "ordinal" : 1, "table_model_id" : null, "create_time" : "2024-04-22T11:38:40+08:00", "update_time" : "2024-04-22T11:38:40+08:00", "tags" : [ { "name" : "tag1" } ], "secrecy_levels" : [ { "name" : "secrecy_level_name" } ], "stand_row_id" : null, "stand_row_name" : null, "quality_infos" : [ { "data_quality_id" : "1231932180754747392" } ], "alias" : "", "self_defined_fields" : [ { "fd_name_ch" : "苏", "fd_name_en" : "SDSDFD", "not_null" : false, "fd_value" : "" }, { "fd_name_ch" : "test", "fd_name_en" : "test", "not_null" : false, "fd_value" : "" } ], "code" : "", "related_logic_attr_id" : null, "related_logic_attr_name" : null, "related_logic_attr_name_en" : null } ], "mappings" : [ { "name" : "mapping_name" } ], "relations" : [ { "name" : "relation_name" } ], "dw_type" : "MRS_HIVE", "dw_name" : "MRS_Hive", "l1" : "tesy", "l2" : "", "l3" : null, "l1_id" : "958408897973161984", "l2_id" : "", "l3_id" : null, "partition_conf" : null, "dlf_task_id" : null, "use_recently_partition" : false, "reversed" : null, "dirty_out_switch" : false, "dirty_out_database" : "", "dirty_out_prefix" : "", "dirty_out_suffix" : "", "quality_owner" : null, "quality_id" : null, "distribute" : null, "distribute_column" : null, "is_partition" : false, "physical_table" : "NO_NEED", "dev_physical_table" : "NO_NEED", "technical_asset" : "NO_NEED", "business_asset" : "NO_NEED", "meta_data_link" : "NO_NEED", "data_quality" : "NO_NEED", "summary_status" : "NO_NEED", "dev_version" : null, "prod_version" : null, "dev_version_name" : null, "prod_version_name" : null, "env_type" : "INVALID_TYPE", "alias" : null, "self_defined_fields" : null, "has_related_physical_table" : false, "has_related_logic_table" : false }
响应示例
状态码: 200
Success,返回data数据是TableModelVO。
{ "data" : { "value" : { "id" : "1012314146584301568", "model_id" : "873242752312385536", "parent_table_id" : null, "parent_table_name" : null, "parent_table_code" : null, "model" : null, "data_format" : "Parquet", "obs_bucket" : null, "obs_location" : null, "configs" : "{}", "table_type" : "MANAGED", "owner" : "", "tb_name" : "staff_info", "dw_id" : "2c9080f07b03db8d017b198a4a20002f", "db_name" : "ctz_test", "queue_name" : "default", "schema" : "", "extend_info" : "{\"dirtyOutDatabase\":\"\",\"dirtyOutPrefix\":\"\",\"dirtyOutSuffix\":\"\",\"dirtyOutSwitch\":\"false\"}", "tb_guid" : null, "tb_id" : "NativeTable-2c9080f07b03db8d017b198a4a20002f-ctz_test-staff_info", "logic_tb_name" : "staff_info", "logic_tb_guid" : "1ab1a58b-9412-4901-bb80-4ccaaa0580e4", "description" : "无", "status" : "PUBLISHED", "logic_tb_id" : null, "biz_catalog_id" : "1012306178602041344", "catalog_path" : "工厂/人员管理/人员档案", "create_by" : "abc", "update_by" : "abc", "create_time" : "2022-08-25T10:55:00+08:00", "update_time" : "2022-08-25T10:55:45+08:00", "tags" : [ ], "approval_info" : null, "new_biz" : null, "attributes" : [ { "id" : "1012314146626244608", "name_en" : "id", "name_ch" : "主键", "description" : "", "obs_location" : null, "create_by" : "abc", "update_by" : "abc", "data_type" : "STRING", "domain_type" : "STRING", "data_type_extend" : "", "is_primary_key" : true, "is_partition_key" : false, "is_foreign_key" : false, "extend_field" : false, "not_null" : true, "ordinal" : 1, "table_model_id" : null, "create_time" : "2022-08-25T10:55:00+08:00", "update_time" : "2022-08-25T10:55:00+08:00", "tags" : [ ], "stand_row_id" : null, "stand_row_name" : null, "quality_infos" : null, "alias" : "", "self_defined_fields" : [ ] }, { "id" : "1012314146626244609", "name_en" : "name", "name_ch" : "名称", "description" : "", "obs_location" : null, "create_by" : "abc", "update_by" : "abc", "data_type" : "STRING", "domain_type" : "STRING", "data_type_extend" : "", "is_primary_key" : false, "is_partition_key" : false, "is_foreign_key" : false, "extend_field" : false, "not_null" : false, "ordinal" : 2, "table_model_id" : null, "create_time" : "2022-08-25T10:55:00+08:00", "update_time" : "2022-08-25T10:55:00+08:00", "tags" : [ ], "stand_row_id" : null, "stand_row_name" : null, "quality_infos" : null, "alias" : "", "self_defined_fields" : [ ] }, { "id" : "1012314146592690176", "name_en" : "age", "name_ch" : "年龄", "description" : "", "obs_location" : null, "create_by" : "abc", "update_by" : "abc", "data_type" : "STRING", "domain_type" : "STRING", "data_type_extend" : "", "is_primary_key" : false, "is_partition_key" : false, "is_foreign_key" : false, "extend_field" : false, "not_null" : false, "ordinal" : 3, "table_model_id" : null, "create_time" : "2022-08-25T10:55:00+08:00", "update_time" : "2022-08-25T10:55:00+08:00", "tags" : [ ], "stand_row_id" : null, "stand_row_name" : null, "quality_infos" : null, "alias" : "", "self_defined_fields" : [ ] } ], "mappings" : null, "relations" : [ ], "dw_type" : "DWS", "dw_name" : null, "l1" : "工厂", "l2" : "人员管理", "l3" : "人员档案", "l1_id" : "1012305751919689728", "l2_id" : "1012306048792526848", "l3_id" : "1012306178602041344", "partition_conf" : null, "dlf_task_id" : null, "use_recently_partition" : false, "reversed" : null, "dirty_out_switch" : false, "dirty_out_database" : "", "dirty_out_prefix" : "", "dirty_out_suffix" : "", "quality_owner" : null, "quality_id" : "1012314332484304897", "distribute" : null, "distribute_column" : null, "is_partition" : false, "physical_table" : "CREATE_SUCCESS", "technical_asset" : "CREATE_FAILED", "business_asset" : "UPDATE_SUCCESS", "meta_data_link" : "UPDATE_FAILED", "data_quality" : "CREATE_SUCCESS", "summary_status" : "SUMMARY_FAILED", "alias" : null, "self_defined_fields" : null } } }
状态码: 400
{ "error_code" : "DS.60xx", "error_msg" : "The user request is illegal." }
状态码: 401
{ "error_code" : "DS.60xx", "error_msg" : "User authentication failed." }
状态码: 403
{ "error_code" : "DS.60xx", "error_msg" : "The user does not have permission to call this API." }
SDK代码示例
SDK代码示例如下。
根据请求参数,更新物理表。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 |
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.dataartsstudio.v1.region.DataArtsStudioRegion; import com.huaweicloud.sdk.dataartsstudio.v1.*; import com.huaweicloud.sdk.dataartsstudio.v1.model.*; import java.time.OffsetDateTime; import java.time.format.DateTimeFormatter; import java.util.List; import java.util.ArrayList; public class UpdateTableModelSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); String projectId = "{project_id}"; ICredential auth = new BasicCredentials() .withProjectId(projectId) .withAk(ak) .withSk(sk); DataArtsStudioClient client = DataArtsStudioClient.newBuilder() .withCredential(auth) .withRegion(DataArtsStudioRegion.valueOf("<YOUR REGION>")) .build(); UpdateTableModelRequest request = new UpdateTableModelRequest(); TableModelUpdateVO body = new TableModelUpdateVO(); List<RelationVO> listbodyRelations = new ArrayList<>(); listbodyRelations.add( new RelationVO() .withName("relation_name") ); List<TableMappingVO> listbodyMappings = new ArrayList<>(); listbodyMappings.add( new TableMappingVO() .withName("mapping_name") ); List<SelfDefinedFieldVO> listAttributesSelfDefinedFields = new ArrayList<>(); listAttributesSelfDefinedFields.add( new SelfDefinedFieldVO() .withFdNameCh("苏") .withFdNameEn("SDSDFD") .withNotNull(false) .withFdValue("") ); listAttributesSelfDefinedFields.add( new SelfDefinedFieldVO() .withFdNameCh("test") .withFdNameEn("test") .withNotNull(false) .withFdValue("") ); List<QualityInfoVO> listAttributesQualityInfos = new ArrayList<>(); listAttributesQualityInfos.add( new QualityInfoVO() .withDataQualityId("1231932180754747392") ); List<SecrecyLevelVO> listAttributesSecrecyLevels = new ArrayList<>(); listAttributesSecrecyLevels.add( new SecrecyLevelVO() .withName("secrecy_level_name") ); List<TagVO> listAttributesTags = new ArrayList<>(); listAttributesTags.add( new TagVO() .withName("tag1") ); List<TableModelAttributeVO> listbodyAttributes = new ArrayList<>(); listbodyAttributes.add( new TableModelAttributeVO() .withId("1231932180754747392") .withNameEn("col_a") .withNameCh("col_a") .withDescription("") .withDataType("STRING") .withDomainType(TableModelAttributeVO.DomainTypeEnum.fromValue("STRING")) .withDataTypeExtend("") .withIsPrimaryKey(false) .withIsPartitionKey(false) .withIsForeignKey(false) .withExtendField(false) .withNotNull(false) .withOrdinal(1) .withCreateTime(OffsetDateTime.parse("2024-04-22T11:38:40+08:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME)) .withUpdateTime(OffsetDateTime.parse("2024-04-22T11:38:40+08:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME)) .withTags(listAttributesTags) .withSecrecyLevels(listAttributesSecrecyLevels) .withQualityInfos(listAttributesQualityInfos) .withAlias("") .withSelfDefinedFields(listAttributesSelfDefinedFields) .withCode("") ); List<TagVO> listbodyTags = new ArrayList<>(); listbodyTags.add( new TagVO() .withName("tag1") ); WorkspaceVO modelbody = new WorkspaceVO(); modelbody.withId("1208730797675311104") .withName("xingneng2") .withDescription("") .withIsPhysical(true) .withFrequent(false) .withTop(false) .withDwType("MRS_HIVE") .withCreateTime(OffsetDateTime.parse("2024-02-18T11:04:39+08:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME)) .withUpdateTime(OffsetDateTime.parse("2024-02-18T11:04:39+08:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME)) .withCreateBy("test_uesr") .withUpdateBy("test_uesr") .withType(WorkspaceVO.TypeEnum.fromValue("THIRD_NF")) .withTableModelPrefix(""); body.withHasRelatedLogicTable(false); body.withHasRelatedPhysicalTable(false); body.withEnvType(TableModelUpdateVO.EnvTypeEnum.fromValue("INVALID_TYPE")); body.withSummaryStatus(TableModelUpdateVO.SummaryStatusEnum.fromValue("NO_NEED")); body.withDataQuality(TableModelUpdateVO.DataQualityEnum.fromValue("NO_NEED")); body.withMetaDataLink(TableModelUpdateVO.MetaDataLinkEnum.fromValue("NO_NEED")); body.withBusinessAsset(TableModelUpdateVO.BusinessAssetEnum.fromValue("NO_NEED")); body.withTechnicalAsset(TableModelUpdateVO.TechnicalAssetEnum.fromValue("NO_NEED")); body.withDevPhysicalTable(TableModelUpdateVO.DevPhysicalTableEnum.fromValue("NO_NEED")); body.withPhysicalTable(TableModelUpdateVO.PhysicalTableEnum.fromValue("NO_NEED")); body.withIsPartition(false); body.withDirtyOutSuffix(""); body.withDirtyOutPrefix(""); body.withDirtyOutDatabase(""); body.withDirtyOutSwitch(false); body.withUseRecentlyPartition(false); body.withL2Id(""); body.withL1Id("958408897973161984"); body.withL2(""); body.withL1("tesy"); body.withDwName("MRS_Hive"); body.withDwType("MRS_HIVE"); body.withRelations(listbodyRelations); body.withMappings(listbodyMappings); body.withAttributes(listbodyAttributes); body.withTags(listbodyTags); body.withUpdateTime(OffsetDateTime.parse("2024-04-22T11:38:40+08:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME)); body.withCreateTime(OffsetDateTime.parse("2024-04-22T11:38:40+08:00", DateTimeFormatter.ISO_OFFSET_DATE_TIME)); body.withUpdateBy("test_uesr"); body.withCreateBy("test_uesr"); body.withCatalogPath("{"l1Id":"958408897973161984","l2Id":"","l3Id":"","l4Id":"","l5Id":"","l6Id":"","l7Id":""}"); body.withBizCatalogId("958408897973161984"); body.withStatus(TableModelUpdateVO.StatusEnum.fromValue("DRAFT")); body.withDescription("无"); body.withLogicTbName("test_update_table_model"); body.withExtendInfo("{"dirtyOutDatabase":"","dirtyOutPrefix":"","dirtyOutSuffix":"","dirtyOutSwitch":"false"}"); body.withDwId("0fafdd43a342436e87e42d7217d26679"); body.withTbName("test_update_table_model"); body.withOwner(""); body.withTableType("HIVE_TABLE"); body.withConfigs("{}"); body.withDataFormat("Parquet"); body.withModel(modelbody); body.withModelId("1208730797675311104"); body.withId("1231932180633112576"); request.withBody(body); try { UpdateTableModelResponse response = client.updateTableModel(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } } |
根据请求参数,更新物理表。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 |
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkdataartsstudio.v1.region.dataartsstudio_region import DataArtsStudioRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkdataartsstudio.v1 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) client = DataArtsStudioClient.new_builder() \ .with_credentials(credentials) \ .with_region(DataArtsStudioRegion.value_of("<YOUR REGION>")) \ .build() try: request = UpdateTableModelRequest() listRelationsbody = [ RelationVO( name="relation_name" ) ] listMappingsbody = [ TableMappingVO( name="mapping_name" ) ] listSelfDefinedFieldsAttributes = [ SelfDefinedFieldVO( fd_name_ch="苏", fd_name_en="SDSDFD", not_null=False, fd_value="" ), SelfDefinedFieldVO( fd_name_ch="test", fd_name_en="test", not_null=False, fd_value="" ) ] listQualityInfosAttributes = [ QualityInfoVO( data_quality_id="1231932180754747392" ) ] listSecrecyLevelsAttributes = [ SecrecyLevelVO( name="secrecy_level_name" ) ] listTagsAttributes = [ TagVO( name="tag1" ) ] listAttributesbody = [ TableModelAttributeVO( id="1231932180754747392", name_en="col_a", name_ch="col_a", description="", data_type="STRING", domain_type="STRING", data_type_extend="", is_primary_key=False, is_partition_key=False, is_foreign_key=False, extend_field=False, not_null=False, ordinal=1, create_time="2024-04-22T11:38:40+08:00", update_time="2024-04-22T11:38:40+08:00", tags=listTagsAttributes, secrecy_levels=listSecrecyLevelsAttributes, quality_infos=listQualityInfosAttributes, alias="", self_defined_fields=listSelfDefinedFieldsAttributes, code="" ) ] listTagsbody = [ TagVO( name="tag1" ) ] modelbody = WorkspaceVO( id="1208730797675311104", name="xingneng2", description="", is_physical=True, frequent=False, top=False, dw_type="MRS_HIVE", create_time="2024-02-18T11:04:39+08:00", update_time="2024-02-18T11:04:39+08:00", create_by="test_uesr", update_by="test_uesr", type="THIRD_NF", table_model_prefix="" ) request.body = TableModelUpdateVO( has_related_logic_table=False, has_related_physical_table=False, env_type="INVALID_TYPE", summary_status="NO_NEED", data_quality="NO_NEED", meta_data_link="NO_NEED", business_asset="NO_NEED", technical_asset="NO_NEED", dev_physical_table="NO_NEED", physical_table="NO_NEED", is_partition=False, dirty_out_suffix="", dirty_out_prefix="", dirty_out_database="", dirty_out_switch=False, use_recently_partition=False, l2_id="", l1_id="958408897973161984", l2="", l1="tesy", dw_name="MRS_Hive", dw_type="MRS_HIVE", relations=listRelationsbody, mappings=listMappingsbody, attributes=listAttributesbody, tags=listTagsbody, update_time="2024-04-22T11:38:40+08:00", create_time="2024-04-22T11:38:40+08:00", update_by="test_uesr", create_by="test_uesr", catalog_path="{"l1Id":"958408897973161984","l2Id":"","l3Id":"","l4Id":"","l5Id":"","l6Id":"","l7Id":""}", biz_catalog_id="958408897973161984", status="DRAFT", description="无", logic_tb_name="test_update_table_model", extend_info="{"dirtyOutDatabase":"","dirtyOutPrefix":"","dirtyOutSuffix":"","dirtyOutSwitch":"false"}", dw_id="0fafdd43a342436e87e42d7217d26679", tb_name="test_update_table_model", owner="", table_type="HIVE_TABLE", configs="{}", data_format="Parquet", model=modelbody, model_id="1208730797675311104", id="1231932180633112576" ) response = client.update_table_model(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
根据请求参数,更新物理表。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 |
package main import ( "fmt" "time" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/sdktime" dataartsstudio "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dataartsstudio/v1/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := dataartsstudio.NewDataArtsStudioClient( dataartsstudio.DataArtsStudioClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.UpdateTableModelRequest{} var listRelationsbody = []model.RelationVo{ { Name: "relation_name", }, } var listMappingsbody = []model.TableMappingVo{ { Name: "mapping_name", }, } fdNameChSelfDefinedFields:= "苏" fdNameEnSelfDefinedFields:= "SDSDFD" notNullSelfDefinedFields:= false fdValueSelfDefinedFields:= "" fdNameChSelfDefinedFields1:= "test" fdNameEnSelfDefinedFields1:= "test" notNullSelfDefinedFields1:= false fdValueSelfDefinedFields1:= "" var listSelfDefinedFieldsAttributes = []model.SelfDefinedFieldVo{ { FdNameCh: &fdNameChSelfDefinedFields, FdNameEn: &fdNameEnSelfDefinedFields, NotNull: ¬NullSelfDefinedFields, FdValue: &fdValueSelfDefinedFields, }, { FdNameCh: &fdNameChSelfDefinedFields1, FdNameEn: &fdNameEnSelfDefinedFields1, NotNull: ¬NullSelfDefinedFields1, FdValue: &fdValueSelfDefinedFields1, }, } var listQualityInfosAttributes = []model.QualityInfoVo{ { DataQualityId: "1231932180754747392", }, } var listSecrecyLevelsAttributes = []model.SecrecyLevelVo{ { Name: "secrecy_level_name", }, } var listTagsAttributes = []model.TagVo{ { Name: "tag1", }, } idAttributes:= "1231932180754747392" descriptionAttributes:= "" domainTypeAttributes:= model.GetTableModelAttributeVoDomainTypeEnum().STRING dataTypeExtendAttributes:= "" isPartitionKeyAttributes:= false isForeignKeyAttributes:= false extendFieldAttributes:= false notNullAttributes:= false ordinalAttributes:= int32(1) dateTimeCreateTime, _ := time.ParseInLocation("2006-01-02T15:04:05Z", "2024-04-22T11:38:40+08:00", time.UTC) createTimeAttributes:= sdktime.SdkTime(dateTimeCreateTime) dateTimeUpdateTime, _ := time.ParseInLocation("2006-01-02T15:04:05Z", "2024-04-22T11:38:40+08:00", time.UTC) updateTimeAttributes:= sdktime.SdkTime(dateTimeUpdateTime) aliasAttributes:= "" codeAttributes:= "" var listAttributesbody = []model.TableModelAttributeVo{ { Id: &idAttributes, NameEn: "col_a", NameCh: "col_a", Description: &descriptionAttributes, DataType: "STRING", DomainType: &domainTypeAttributes, DataTypeExtend: &dataTypeExtendAttributes, IsPrimaryKey: false, IsPartitionKey: &isPartitionKeyAttributes, IsForeignKey: &isForeignKeyAttributes, ExtendField: &extendFieldAttributes, NotNull: ¬NullAttributes, Ordinal: &ordinalAttributes, CreateTime: &createTimeAttributes, UpdateTime: &updateTimeAttributes, Tags: &listTagsAttributes, SecrecyLevels: &listSecrecyLevelsAttributes, QualityInfos: &listQualityInfosAttributes, Alias: &aliasAttributes, SelfDefinedFields: &listSelfDefinedFieldsAttributes, Code: &codeAttributes, }, } var listTagsbody = []model.TagVo{ { Name: "tag1", }, } idModel:= "1208730797675311104" descriptionModel:= "" isPhysicalModel:= true frequentModel:= false topModel:= false dwTypeModel:= "MRS_HIVE" dateTimeCreateTime, _ := time.ParseInLocation("2006-01-02T15:04:05Z", "2024-02-18T11:04:39+08:00", time.UTC) createTimeModel:= sdktime.SdkTime(dateTimeCreateTime) dateTimeUpdateTime, _ := time.ParseInLocation("2006-01-02T15:04:05Z", "2024-02-18T11:04:39+08:00", time.UTC) updateTimeModel:= sdktime.SdkTime(dateTimeUpdateTime) createByModel:= "test_uesr" updateByModel:= "test_uesr" tableModelPrefixModel:= "" modelbody := &model.WorkspaceVo{ Id: &idModel, Name: "xingneng2", Description: &descriptionModel, IsPhysical: &isPhysicalModel, Frequent: &frequentModel, Top: &topModel, DwType: &dwTypeModel, CreateTime: &createTimeModel, UpdateTime: &updateTimeModel, CreateBy: &createByModel, UpdateBy: &updateByModel, Type: model.GetWorkspaceVoTypeEnum().THIRD_NF, TableModelPrefix: &tableModelPrefixModel, } hasRelatedLogicTableTableModelUpdateVo:= false hasRelatedPhysicalTableTableModelUpdateVo:= false envTypeEnvType:= model.GetEnvTypeEnumEnvTypeEnum().INVALID_TYPE summaryStatusSummaryStatus:= model.GetSyncStatusEnumSummaryStatusEnum().NO_NEED dataQualityDataQuality:= model.GetSyncStatusEnumDataQualityEnum().NO_NEED metaDataLinkMetaDataLink:= model.GetSyncStatusEnumMetaDataLinkEnum().NO_NEED businessAssetBusinessAsset:= model.GetSyncStatusEnumBusinessAssetEnum().NO_NEED technicalAssetTechnicalAsset:= model.GetSyncStatusEnumTechnicalAssetEnum().NO_NEED devPhysicalTableDevPhysicalTable:= model.GetSyncStatusEnumDevPhysicalTableEnum().NO_NEED physicalTablePhysicalTable:= model.GetSyncStatusEnumPhysicalTableEnum().NO_NEED isPartitionTableModelUpdateVo:= false dirtyOutSuffixTableModelUpdateVo:= "" dirtyOutPrefixTableModelUpdateVo:= "" dirtyOutDatabaseTableModelUpdateVo:= "" dirtyOutSwitchTableModelUpdateVo:= false useRecentlyPartitionTableModelUpdateVo:= false l2IdTableModelUpdateVo:= "" l1IdTableModelUpdateVo:= "958408897973161984" l2TableModelUpdateVo:= "" l1TableModelUpdateVo:= "tesy" dwNameTableModelUpdateVo:= "MRS_Hive" dwTypeTableModelUpdateVo:= "MRS_HIVE" dateTimeUpdateTime, _ := time.ParseInLocation("2006-01-02T15:04:05Z", "2024-04-22T11:38:40+08:00", time.UTC) updateTimeTableModelUpdateVo:= sdktime.SdkTime(dateTimeUpdateTime) dateTimeCreateTime, _ := time.ParseInLocation("2006-01-02T15:04:05Z", "2024-04-22T11:38:40+08:00", time.UTC) createTimeTableModelUpdateVo:= sdktime.SdkTime(dateTimeCreateTime) updateByTableModelUpdateVo:= "test_uesr" createByTableModelUpdateVo:= "test_uesr" catalogPathTableModelUpdateVo:= "{"l1Id":"958408897973161984","l2Id":"","l3Id":"","l4Id":"","l5Id":"","l6Id":"","l7Id":""}" bizCatalogIdTableModelUpdateVo:= "958408897973161984" statusStatus:= model.GetBizStatusEnumStatusEnum().DRAFT extendInfoTableModelUpdateVo:= "{"dirtyOutDatabase":"","dirtyOutPrefix":"","dirtyOutSuffix":"","dirtyOutSwitch":"false"}" dwIdTableModelUpdateVo:= "0fafdd43a342436e87e42d7217d26679" ownerTableModelUpdateVo:= "" tableTypeTableModelUpdateVo:= "HIVE_TABLE" configsTableModelUpdateVo:= "{}" dataFormatTableModelUpdateVo:= "Parquet" request.Body = &model.TableModelUpdateVo{ HasRelatedLogicTable: &hasRelatedLogicTableTableModelUpdateVo, HasRelatedPhysicalTable: &hasRelatedPhysicalTableTableModelUpdateVo, EnvType: &envTypeEnvType, SummaryStatus: &summaryStatusSummaryStatus, DataQuality: &dataQualityDataQuality, MetaDataLink: &metaDataLinkMetaDataLink, BusinessAsset: &businessAssetBusinessAsset, TechnicalAsset: &technicalAssetTechnicalAsset, DevPhysicalTable: &devPhysicalTableDevPhysicalTable, PhysicalTable: &physicalTablePhysicalTable, IsPartition: &isPartitionTableModelUpdateVo, DirtyOutSuffix: &dirtyOutSuffixTableModelUpdateVo, DirtyOutPrefix: &dirtyOutPrefixTableModelUpdateVo, DirtyOutDatabase: &dirtyOutDatabaseTableModelUpdateVo, DirtyOutSwitch: &dirtyOutSwitchTableModelUpdateVo, UseRecentlyPartition: &useRecentlyPartitionTableModelUpdateVo, L2Id: &l2IdTableModelUpdateVo, L1Id: &l1IdTableModelUpdateVo, L2: &l2TableModelUpdateVo, L1: &l1TableModelUpdateVo, DwName: &dwNameTableModelUpdateVo, DwType: &dwTypeTableModelUpdateVo, Relations: &listRelationsbody, Mappings: &listMappingsbody, Attributes: listAttributesbody, Tags: &listTagsbody, UpdateTime: &updateTimeTableModelUpdateVo, CreateTime: &createTimeTableModelUpdateVo, UpdateBy: &updateByTableModelUpdateVo, CreateBy: &createByTableModelUpdateVo, CatalogPath: &catalogPathTableModelUpdateVo, BizCatalogId: &bizCatalogIdTableModelUpdateVo, Status: &statusStatus, Description: "无", LogicTbName: "test_update_table_model", ExtendInfo: &extendInfoTableModelUpdateVo, DwId: &dwIdTableModelUpdateVo, TbName: "test_update_table_model", Owner: &ownerTableModelUpdateVo, TableType: &tableTypeTableModelUpdateVo, Configs: &configsTableModelUpdateVo, DataFormat: &dataFormatTableModelUpdateVo, Model: modelbody, ModelId: "1208730797675311104", Id: "1231932180633112576", } response, err := client.UpdateTableModel(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
状态码 |
描述 |
---|---|
200 |
Success,返回data数据是TableModelVO。 |
400 |
BadRequest |
401 |
Unauthorized |
403 |
Forbidden |