当您在Hologres需要加速查询MaxCompute数据时,可以使用数据目录的MaxCompute元数据映射功能,将MaxCompute表元数据映射至Hologres,通过Hologres外表实现对MaxCompute数据的加速查询。
背景信息
Hologres的外部表、外部项目可以加速查询MaxCompute等外部数据源中的数据,您无需将数据导入到Hologres内部存储,即可直接在Hologres上操作外部数据。
DataWorks中的MaxCompute元数据映射功能利用Hologres的外表能力,将MaxCompute指定数据通过在Hologres中创建MaxCompute外表的方式映射至Hologres,实现对MaxCompute数据的加速查询。
目前DataWorks支持通过可视化方式快速将MaxCompute库级、Schema级和表级的元数据映射至Hologres:
整库级元数据映射:通过Hologres外部项目CREATE EXTERNAL DATABASE能力实现。
Schema级元数据映射:通过Hologres外部表Auto Load能力实现。
单表级元数据映射:通过Hologres外部表CREATE FOREIGN TABLE能力实现。
更多关于通过Hologres加速查询MaxCompute数据的说明,请参见:MaxCompute加速。
使用限制
仅MaxCompute内部项目支持此功能。
仅Holgres 3.0.7及更高版本支持该功能。
仅支持将MaxCompute元数据映射至Hologres独享实例。
注意事项
MaxCompute与Hologres的数据类型存在差异,部分数据类型不支持映射,请在使用此功能前仔细阅读MaxCompute与Hologres的数据类型映射,然后结合实际业务确认是否符合预期。
功能入口
进入DataWorks工作空间列表页,在顶部切换至目标地域,找到已创建的工作空间,单击操作列的 ,进入Data Studio。
在左侧导航栏单击
,进入数据目录。
在MaxCompute目录下找到需要映射元数据至Hologres的MaxCompute项目、Schema或表,右键选择元数据映射至Hologres。
整库级元数据映射
MaxCompute整库级元数据映射功能将会在您指定的Hologres实例下,创建与MaxCompute同名的Hologres外部项目,将MaxCompute 该项目下的元数据统一通过外表方式映射至该Hologres。
在MaxCompute目录下找到需要映射元数据至Hologres的MaxCompute项目。单击
,进入元数据映射配置页面。配置整库级元数据映射相关参数。
源端
参数
说明
源端对象类型
确认需要映射所有元数据至Hologres的对象类型,固定为
MaxCompute Project
。源端对象名称
确认需要映射所有元数据至Hologres的MaxCompute项目,固定为当前MaxCompute项目。
Hologres 目标端
参数
说明
实例查找方式
选择如何查找Hologres实例。
来自DataWorks数据源:通过选择当前空间绑定Hologres数据源的方式来选择其对应的Hologres实例。选择此方式后,还需要选择数据源来指定目标Hologres实例。选择该方式,您需要确保数据源指定的访问身份已拥有Hologres的SuperUser权限,以及源端MaxCompute表的读写权限。
说明仅拥有工作空间运维角色或者管理员角色的用户可选择生产数据源。
我有权限的:从当前阿里云主账号下,您有权限访问的Hologres实例中选择需要映射的目标Hologres实例。选择此方式后,还需要选择目标Hologres 实例。请确保您已拥有Hologres的SuperUser权限,以及源端MaxCompute表的读写权限。
说明仅Holgres 3.0.7及更高版本支持该功能。
仅支持将MaxCompute元数据映射至Hologres独享实例。
External Database
定义在指定的Hologres独享实例下创建的新的External Database名称,源端元数据将会被实时映射至目标端,如不需要继续更新,可删除目标端指定的External Database。
单击顶部运行按钮,系统将通过Hologres外部项目CREATE EXTERNAL DATABASE能力实现MaxCompute整库级元数据映射。
Schema级元数据映射
MaxCompute Schema级元数据映射功能会将MaxCompute Schema下的元数据统一通过外表方式映射至Hologres。
MaxCompute需要开启Schema开关,才会在数据目录下展示Schema层级,详情请参见Schema操作。
在MaxCompute项目下找到需要映射数据至Hologres的Schema。单击
,进入元数据映射配置页面。配置Schema数据映射相关参数。
源端
参数
说明
源端对象类型
确认需要映射Schema数据至Hologres的对象类型,固定为
MaxCompute Schema
。源端对象名称
确认需要映射Schema数据至Hologres的MaxCompute Schema名称,固定为当前选择的Schema。
Hologres 目标端
参数
说明
实例查找方式
选择如何查找Hologres实例。
来自DataWorks数据源:通过选择当前空间绑定Hologres数据源的方式来选择其对应的Hologres实例。选择此方式后,还需要选择数据源和Schema来指定目标Hologres实例的Schema。选择该方式,您需要确保数据源指定的访问身份已拥有源MaxCompute表与目标Hologres的读写权限。
说明仅拥有工作空间运维角色或者管理员角色的用户可选择生产数据源。
我有权限的:从当前阿里云主账号下,您有权限访问的Hologres实例中选择需要映射的目标Hologres实例。选择此方式后,还需要选择Hologres 实例、Database以及Schema来指定目标Schema。请确保您已拥有源MaxCompute表与目标Hologres的读写权限。
说明仅Holgres 3.0.7及更高版本支持该功能。
仅支持将MaxCompute元数据映射至Hologres独享实例。
Database
选择Hologres实例中已有的Database。
Schema
定义在指定的Hologres独享实例下创建的新的Schema名称,源端Schema数据将会被映射至此Schema中。
说明创建Schema为一次性动作,不会自动刷新元数据,如需刷新元数据,需要删除当前Schema并重新手动创建Schema级元数据映射。
单击顶部运行按钮,系统将通过Hologres外部表Auto Load能力实现MaxCompute Schema级数据映射。
单表级元数据映射
MaxCompute单表级元数据映射功能会将指定MaxCompute表通过外表方式映射至Hologres的指定表中,支持您指定外表路径以及自定义外表名称。
在MaxCompute项目下找到需要映射元数据至Hologres的MaxCompute表。右键单击表名,选择元数据映射至Hologres,进入元数据映射配置页面。
配置单表级元数据映射相关参数。
源端
参数
说明
源端对象类型
确认需要映射单表级元数据至Hologres的对象类型,默认为
MaxCompute Table
。源端对象名称
确认需要映射单表级元数据至Hologres的MaxCompute表,固定为当前选择的MaxCompute表。
Hologres 目标端
参数
说明
实例查找方式
选择如何查找Hologres实例。
来自DataWorks数据源:通过选择当前空间绑定Hologres数据源的方式来选择其对应的Hologres实例。选择此方式后,还需要选择数据源、Schema和External Table来指定目标Hologres实例的具体外部表。选择该方式,您需要确保数据源指定的访问身份已拥有源MaxCompute表与目标Hologres的读写权限。
说明仅拥有工作空间运维角色或者管理员角色的用户可选择生产数据源。
我有权限的:从当前阿里云主账号下,您有权限访问的Hologres实例中选择需要映射的目标Hologres实例。选择此方式后,还需要选择Hologres 实例、Database、Schema和External Table来指定目标外表。请确保您已拥有源MaxCompute表与目标Hologres的读写权限。
说明仅Holgres 3.0.7及更高版本支持该功能。
仅支持将MaxCompute元数据映射至Hologres独享实例。
Database
选择Hologres实例中已有的Database。
Schema
选择Hologres实例中对应Database下已有的Schema。
External Table
定义指定Hologres独享实例的Database的Schema下创建的新的外表名称,源端表数据将会被映射至此表中。
说明创建外表为一次性动作,不会自动刷新元数据,如需刷新元数据,需要删除当前外表并重新手动创建元数据映射。
字段
按需配置目标外表中的映射字段和分区配置。
表名冲突
选择表名冲突时的处理策略:
跳过,不再重复创建
覆盖,删除已存在的表并创建新表
报错
单击顶部运行按钮,系统将通过Hologres的外部表CREATE FOREIGN TABLE能力实现MaxCompute表级元数据映射。
后续步骤
在
下查看已创建的外表。在
节点中通过外表加速查询MaxCompute数据。