DataWorks支持一键导入表结构功能,帮助您使用DataStudio快速批量创建与目标MaxCompute表结构相同的Hologres外部表,后续您可使用Hologres外部表加速查询MaxCompute表的数据。本文为您介绍如何创建并使用一键MaxCompute表结构同步节点。
背景信息
Hologres是阿里巴巴自主研发的一站式实时数仓引擎,它与MaxCompute在底层无缝连接,支持使用新建外部表的方式加速查询MaxCompute数据。
DataWorks是基于IMPORT FOREIGN SCHEMA语句实现可视化方式的一键MaxCompute表结构同步Hologres。
使用限制
仅支持使用该功能加速查询MaxCompute内部表的数据,不支持加速查询MaxCompute外部表的数据和视图。
本文以下示例操作以华东2(上海)地域为例,其它地域请以界面为准。
进入一键MaxCompute表结构同步界面
进入数据开发页面。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据集成。
创建业务流程。
如果您已有业务流程,则可以忽略该步骤。
鼠标悬停至图标,选择新建业务流程。
在新建业务流程对话框,输入业务名称。
单击新建。
创建一键MaxCompute表结构同步节点。
鼠标悬停至图标,选择 。
您也可以找到相应的业务流程,右键单击业务流程,选择
。在新建节点对话框中,输入名称,并选择引擎实例、节点类型及路径。
单击确认,进入节点编辑页面。
配置一键MaxCompute表结构同步节点
配置节点信息。
在节点编辑页面,配置创建Hologres外部表所使用的Hologres连接信息、MaxCompute表的来源信息及建表时的冲突策略。
配置目标信息。
用于配置创建的Hologres外部表要放于哪个Hologres实例下。
参数
描述
目标连接
Hologres的实例名称。
目标库
Hologres实例下的数据库名称。
Schema
Hologres数据库下的Schema名称。默认为public。
配置来源信息。
用于配置创建的Hologres外部表的表结构来源于哪个表。DataWorks基于该信息在Hologres中创建与源表的表结构相同的外部表,方便您通过Hologres外部表快速查询源表数据。
参数
描述
类型
当前仅支持基于MaxCompute类型的源表创建Hologres外部表。
服务器列表
源表所在的服务器。
您可以直接调用Hologres底层已创建的odps_server外部表服务器。详细原理请参见postgres_fdw。
来源项目
源表所在的项目名称。
选择要直接加速的表
用于选择需要基于哪些源表创建外部表。
整库加速:创建所选数据库中的所有表。
部分加速:仅创建所选数据库中的部分表。可通过表名搜索需要创建的表。
说明搜索支持模糊匹配,即输入关键词即可查询到所有名称包含关键词的表。
配置冲突策略。
用于配置创建外部表时,对于冲突情况所采取的处理策略。
参数
描述
表名冲突
Hologres中存在与创建的外部表名称相同的表时,处理策略如下:
忽略,继续创建其他表。
更新,修改同名表。
报错,不再重复创建。
数据类型不支持
创建外部表时,对Hologres不支持的数据类型处理策略如下:
报错,导入失败:该方式会导致所选表创建失败。
忽略,跳过不支持字段:该方式仅会忽略不支持的字段,但不影响表的创建。
保存并运行节点。
在节点编辑页面的顶部菜单栏,单击图标,保存节点配置。
在节点编辑页面的顶部菜单栏,单击图标,批量创建外部表。
运行时您需要选择Hologres实例与DataWorks网络环境处于连通状态的Serverless资源组。详情请参见网络连通方案。
后续步骤
外部表创建完成后,您可进入DataWorks的表管理页面查看批量创建的外部表,详情请参见表管理;或使用Hologres的命令加速查询MaxCompute数据,详情请参见基于Foreign Table加速查询MaxCompute数据。
仅支持加速查询MaxCompute内部表的数据,不支持加速查询MaxCompute外部表的数据和视图。