MaxCompute新增Schema功能后,DataWorks各模块涉及MaxCompute表、资源、函数等相关功能的使用逻辑也根据MaxCompute Schema进行了相应调整。本文为您介绍DataWorks各模块对MaxCompute Schema能力的支持情况。
背景信息
MaxCompute新增了Schema功能后,由原有的两层模型结构(project_name.table_name
)变更为包含Schema的三层模型结构(project_default.schema_default.table_name
),Schema用于在MaxCompute的项目下对Table、Resource、Function等进行归类,详情请参见Schema操作。
注意事项
存量租户从MaxCompute两层结构升级至三层结构的场景,注意事项如下:
仅当租户级别开启Schema功能(即MaxCompute项目的
odps.namespace.schema
配置为true
)时,DataWorks才支持展示Schema相关交互。说明若只有某些项目存储使用了自定义的Schema,而租户级别
odps.namespace.schema
配置为false
,由于DataWorks不支持使用自定义Schema,因此该场景DataWorks无法展示Schema相关交互。按照MaxCompute解析规则,原有代码中格式为
project.table
的路径可能默认被解析为project_default.project.table
,导致找不到表路径而报错。DataStudio中通过自动解析功能得出的依赖关系保持不变。
开启MaxCompute Schema
您可根据业务需求选择是否需要开启MaxCompute Schema,具体如下表。
业务场景 | 开启操作 | 说明 |
任务、MaxCompute资源较少的租户 |
| MaxCompute Schema为租户级别开启,开启后该租户下的所有地域均使用包含Schema的三层模型,且不可关闭。 |
任务、MaxCompute资源较多的租户 | 不支持开启MaxCompute Schema(即 | 不涉及 |
DataWorks各模块对MaxCompute Schema支持情况
若您的MaxCompute项目已开启Schema功能,则DataWorks控制台的大部分操作均需指定Schema。开启MaxCompute Schema后,DataWorks各模块对Schema的支持情况如下表。
模块 | MaxCompute Schema支持情况 |
DataStudio界面操作的变化如下:
| |
维度建模中执行如下操作时支持指定Schema:
| |
离线同步、实时同步、同步解决方案选择源表及目标表时支持选择Schema。同时,支持在配置同步任务过程中新建Schema。 | |
数据地图页面将按照 说明 暂不支持通过Schema搜索目标表。 | |
说明 暂不支持通过Schema搜索目标表。 | |
支持按照 | |
支持按照 | |
涉及MaxCompute表的页面支持展示及筛选Schema。例如,编写查询SQL。 | |
涉及MaxCompute表的页面支持展示及筛选Schema。例如,SQL查询的目录树、SQL编辑器。 | |
涉及MaxCompute表的页面支持展示及筛选Schema。例如,敏感数据识别、动静态数据脱敏等。 |
MaxCompute Schema的自动解析规则
在包含Schema的三层模型下,使用自动解析时系统会将代码中的表补全为odps_project.schema.table
格式,如果schema=default
,则会隐藏该Schema,具体如下表。
Schema类型 | odps_project.schema.table生态语法 | 自动解析结果 |
default |
|
|
非default(示例为自定义的 |
|
|
自动解析功能的原理介绍,详情请参见调度依赖配置指引。