DataWorks支持一键导入表结构功能,帮助您使用DataStudio快速批量创建与目标MaxCompute表结构相同的Hologres外部表,后续您可使用Hologres外部表加速查询MaxCompute表的数据。本文为您介绍如何创建并使用一键MaxCompute表结构同步节点。
背景信息
Hologres是阿里巴巴自主研发的一站式实时数仓引擎,它与MaxCompute在底层无缝连接,支持使用新建外部表的方式加速查询MaxCompute数据。Hologres介绍,详情请参见什么是实时数仓Hologres。
DataWorks是基于IMPORT FOREIGN SCHEMA
语句实现可视化方式的一键同步,详情请参见IMPORT FOREIGN SCHEMA。
使用限制
仅支持使用该功能加速查询MaxCompute内部表的数据,不支持加速查询MaxCompute外部表的数据和视图。
创建表结构同步节点
- 进入数据开发页面。
- 登录DataWorks控制台。
- 在左侧导航栏,单击工作空间列表。
- 选择工作空间所在地域后,单击相应工作空间后的数据开发。
- 创建业务流程。
如果您已有业务流程,则可以忽略该步骤。
- 鼠标悬停至
图标,选择新建业务流程。
- 在新建业务流程对话框,输入业务名称。
- 单击新建。
- 创建一键MaxCompute表结构同步节点。
- 鼠标悬停至
图标,选择。您也可以找到相应的业务流程,右键单击业务流程,选择。
- 在新建节点对话框中,输入名称,并选择引擎实例、节点类型及路径。
- 单击提交,进入节点编辑页面。
- 配置节点信息。
在节点编辑页面,配置创建Hologres外部表所使用的Hologres连接信息、MaxCompute表的来源信息及建表时的冲突策略。

- 配置目标信息。
用于配置创建的Hologres外部表要放于哪个Hologres实例下。
参数 |
描述 |
目标连接 |
Hologres的实例名称。 |
目标库 |
Hologres实例下的数据库名称。 |
模式 |
Hologres数据库下的Schema名称。默认为public。
|
- 配置来源信息。
用于配置创建的Hologres外部表的表结构来源于哪个表。DataWorks基于该信息在Hologres中创建与源表的表结构相同的外部表,方便您通过Hologres外部表快速查询源表数据。
参数 |
描述 |
类型 |
当前仅支持基于MaxCompute类型的源表创建Hologres外部表。 |
服务器列表 |
源表所在的服务器。
您可以直接调用Hologres底层已创建的odps_server外部表服务器。详细原理请参见postgres_fdw。
|
来源项目 |
源表所在的项目名称。 |
选择要直接加速的表 |
用于选择需要基于哪些源表创建外部表。
- 整库加速:创建所选数据库中的所有表。
- 部分加速:仅创建所选数据库中的部分表。可通过表名搜索需要创建的表。
说明 搜索支持模糊匹配,即输入关键词即可查询到所有名称包含关键词的表。
|
- 配置冲突策略。
用于配置创建外部表时,对于冲突情况所采取的处理策略。
参数 |
描述 |
表名冲突 |
Hologres中存在与创建的外部表名称相同的表时,处理策略如下:
- 忽略,继续创建其他表
- 更新,修改同名表
- 报错,不再重复创建
|
数据类型不支持 |
创建外部表时,对Hologres不支持的数据类型处理策略如下:
- 报错,导入失败:该方式会导致所选表创建失败。
- 忽略,跳过不支持字段:该方式仅会忽略不支持的字段,但不影响表的创建。
|
- 保存并运行节点。
- 在节点编辑页面的顶部菜单栏,单击
图标,保存节点配置。
- 在节点编辑页面的顶部菜单栏,单击
图标,批量创建外部表。
后续步骤
外部表创建完成后,您可进入DataWorks的表管理页面查看批量创建的外部表,详情请参见表管理;或使用Hologres的命令加速查询MaxCompute数据,详情请参见通过创建外部表加速查询MaxCompute数据。
说明 仅支持加速查询MaxCompute内部表的数据,不支持加速查询MaxCompute外部表的数据和视图。