映射Hologres元数据至MaxCompute外表

更新时间:2025-04-18 10:25:17

当您需要在MaxCompute访问Hologres数据时,可通过数据目录的Hologres元数据映射功能创建MaxCompute外部表,以直接读取Hologres数据,无需将数据导入MaxCompute,此方式可以节省计算存储资源、实现灵活高效的数据处理。

背景信息

MaxCompute 支持通过外部表功能对存储在Hologres等外部存储系统中的数据进行查询和分析。借助PostgreSQL JDBC驱动和RAM角色授权,您无需将数据导入到MaxCompute内部存储,即可直接操作外部数据。

在 DataWorks 中,您可以通过元数据映射快速实现该操作。此功能底层依托于MaxCompute的以下能力:

前提条件

权限控制

image

DataWorks根据MaxCompute项目的来源确认访问身份,基于此身份,进行后续相关权限的校验。

根据MaxCompute项目来源确定访问身份

MaxCompute侧访问身份权限校验

Hologres侧权限校验

根据MaxCompute项目来源确定访问身份

MaxCompute侧访问身份权限校验

Hologres侧权限校验

  • MaxCompute来自DataWorks数据源:访问身份为数据源配置的访问身份。若要将Hologres元数据映射至生产数据源对应的MaxCompute,您需要是DataWorks运维空间管理员

  • MaxCompute来自个人有权限的项目:访问身份为当前操作账号。

  • 在执行Hologres元数据映射至MaxCompute时,请确保上述访问身份已经加入MaxCompute项目。

  • 在通过MaxCompute外表读取Hologres数据时,请确保上述访问身份拥有MaxCompute外表读取权限。

  • 使用双签名身份认证与鉴权:访问身份拥有Hologres表读写权限。

  • 使用RAMROLE身份认证与鉴权:RAMROLE拥有Hologres表读写权限。

使用限制

  • 仅支持将Hologres内部数据库的数据映射至MaxCompute。

  • MaxComputeHologres外部表的使用限制,请参见Hologres外部表

  • MaxComputeHologres的数据类型存在差异,Hologres部分数据类型不支持映射至MaxCompute,不支持映射的数据类型会自动忽略映射。请在使用此功能前仔细阅读MaxComputeHologres的数据类型映射关系,以确保适用您的业务需求。

功能入口

  1. 进入DataWorks工作空间列表页,在顶部切换至目标地域,找到已创建的工作空间,单击操作列的快速进入 > Data Studio,进入Data Studio。

  2. 在左侧导航栏单击image,进入数据目录

  3. Hologres目录中定位到需要映射元数据至MaxComputeSchema或表,右键选择元数据映射至MaxCompute

Schema级元数据映射

HologresSchema级元数据映射功能会将HologresSchema元数据统一映射至MaxCompute的外部Schema。操作前,建议您参考湖仓一体2.0使用指南提前了解MaxCompute外部数据源与外部Schema。

重要

只支持映射到MaxCompute开启了三层模型内部项目中。

MaxCompute侧:准备Hologres类型外部数据源

Hologres Schema级元数据映射是通过在MaxCompute项目中创建外部Schema实现的,该Schema会从外部数据源同步Hologres的元数据。因此,您需先在DataWorks中创建指向目标Hologres数据库的MaxCompute外部数据源,并将MaxCompute外部数据源挂载至指定MaxCompute内部项目,以建立MaxCompute内部项目下外部SchemaHologres指定数据库的映射。

创建MaxCompute外部数据源,详情请参见创建并使用Hologres联邦

说明

创建外部数据源时,Host请填写经典网络地址,暂不支持使用VPC地址。DB请配置需要进行元数据映射的Hologres 数据库。

DataWorks侧:配置Hologres Schema级元数据映射

  1. 进入元数据映射配置页面

  2. Hologres项目下找到需要映射数据至MaxComputeSchema。右键单击Schema名,选择元数据映射至MaxCompute,进入元数据映射配置页面。

  3. 配置Schema数据映射相关参数。

    • Hologres 源端

      参数

      说明

      参数

      说明

      源端对象类型

      确认需要映射Schema数据至MaxCompute的对象类型,固定为Hologres Schema

      源端对象名称

      确认需要映射Schema数据至MaxComputeHologres Schema名称,固定为当前选择的Schema。

      格式:<hologres_database>.<hologres_schema>

      说明

      您需要提前在MaxCompute创建Hologres类型外部数据源,并指定外部数据源默认访问的Hologres数据库为此处的<hologres_database>,详情参见MaxCompute侧:准备Hologres类型外部数据源

    • MaxCompute 目标端

      参数

      说明

      参数

      说明

      项目查找方式

      选择如何查找MaxCompute项目。

      • 来自DataWorks数据源:通过选择当前空间绑定MaxCompute数据源的方式来选择其对应的MaxCompute实例。选择此方式后,还需要选择数据源并设置外部Schema名称,在目标MaxCompute项目中创建外部Schema。

        说明

        仅拥有工作空间运维角色或者管理员角色的用户可选择生产数据源。

      • 我有权限的:从当前阿里云主账号下,您有权限访问的MaxCompute项目中选择需要映射的目标MaxCompute项目。选择此方式后,还需要设置外部Schema名称来指定目标Schema。

      数据源

      项目查找方式配置为来自DataWorks数据源时,需要手动选择MaxCompute数据源。

      项目名称

      项目查找方式配置为我有权限的时,需要手动选择MaxCompute项目。

      外部Schema名称

      指定源端Hologres Schema下的元数据映射至目标MaxCompute的外部Schema名称。

      外部数据源

      选择已经和源端Hologres数据库建立连接的MaxCompute外部数据源名称

      重要

      创建MaxCompute外部数据源时:

      • Host请填写经典网络地址,暂不支持使用VPC地址。

      • 认证方式仅支持选择RAMRole方式,暂不支持ExecuteWithUserAuth方式。

      Auth

      根据选择的外部数据源自动生成。

      Host:port

      Database

  4. 单击顶部工具栏的运行按钮,完成Hologres Schema级数据映射。

单表级元数据映射

Hologres单表级元数据映射功能将指定Hologres表通过外表方式映射至MaxCompute的指定表中,支持您指定外表路径以及自定义外表名称。

  1. 进入元数据映射配置页面

  2. Hologres项目下找到需要映射元数据至MaxComputeHologres表。右键单击表名,选择元数据映射至MaxCompute,进入元数据映射配置页面。

  3. 配置单表级元数据映射相关参数。

    • Hologres 源端

      参数

      说明

      参数

      说明

      源端对象类型

      确认需要映射单表级元数据至MaxCompute的对象类型,默认为Hologres Table

      源端对象名称

      确认需要映射单表级元数据至MaxComputeHologres表,固定为当前选择的Hologres表。

    • MaxCompute 目标端

      参数

      说明

      参数

      说明

      实例查找方式

      选择如何查找MaxCompute项目。

      • 来自DataWorks数据源:通过选择当前空间绑定MaxCompute数据源的方式来选择其对应的MaxCompute项目。选择此方式后,还需要选择数据源、设置External Table名称来指定目标MaxCompute项目的具体外部表。选择该方式,您需要确保数据源指定的访问身份已拥有源Hologres表与目标MaxCompute的读写权限。

        说明

        仅拥有工作空间运维角色或者管理员角色的用户可选择生产数据源。

      • 我有权限的:从当前阿里云主账号下,您有权限访问的MaxCompute项目中选择需要映射的目标MaxCompute项目。选择此方式后,还需要设置External Table名称来指定目标外表。请确保您已拥有源Hologres表与目标MaxCompute的读写权限。

      数据源

      项目查找方式配置为来自DataWorks数据源时,需要手动选择目标端MaxCompute数据源。

      项目名称

      项目查找方式配置为我有权限的时,需要手动选择目标端MaxCompute项目。

      Schema

      指定源端Hologres Schema下的元数据映射至目标MaxCompute的外部Schema名称。

      External Table

      定义指定MaxCompute项目的Schema下创建的新的外表名称,源端表数据将会被映射至此表中,默认与Hologres中表名称保持一致。

      说明

      创建外表为一次性动作,不会自动刷新元数据,如需刷新元数据,需要删除当前外表并重新手动创建元数据映射。

      MaxCompute外表权限

      定义Hologres元数据映射至MaxCompute外表后,该外表的权限认证及鉴权方式。

      • 双签名

        双签名是MaxComputeHologres共同研发的认证及鉴权协议,在MaxCompute侧使用账号登录信息加签名后,把认证数据传递给Hologres侧,Hologres根据MaxCompute底层达成的协议,进行同名认证及鉴权。因此,只需在MaxComputeHologres中使用相同的账号,便可直接进行外部表访问,无需额外设置认证信息。

      • RamRole:即通过STS模式进行认证及鉴权。

      RoleARN

      MaxCompute外表权限配置为RamRole时,需要配置。

      您需要创建RAM角色并获取ARN信息填写至此处,RAM角色需要配置的相关权限,请参见创建Hologres外部表(STS模式)

      Location

      Hologres表与MaxCompute表的映射地址,自动生成,无需修改。

      生命周期

      设置目标外表的生命周期。

      字段

      按需配置目标外表中的MaxCompute 字段MaxCompute 数据类型

      说明

      MaxComputeHologres的数据类型存在差异,部分数据类型不支持映射。具体数据类型映射关系,请参见MaxComputeHologres的数据类型映射

  4. 单击顶部运行按钮,完成Hologres表级数据映射。

后续步骤

  • 数据目录 > MaxCompute下查看已映射的外部Schema或指定Schema下的外表。

  • 数据开发 > MaxCompute SQL节点中查询Hologres外表的数据。

  • 本页导读 (1)
  • 背景信息
  • 前提条件
  • 权限控制
  • 使用限制
  • 功能入口
  • Schema级元数据映射
  • MaxCompute侧:准备Hologres类型外部数据源
  • DataWorks侧:配置Hologres Schema级元数据映射
  • 单表级元数据映射
  • 后续步骤
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等