文档

创建Hologres外部表

更新时间:

Hologres可通过DDL方式创建Hologres外部表,也可使用DataWorks提供的可视化方式创建。本文为您介绍如何使用DataWorks可视化方式创建Hologres外部表。

前提条件

背景信息

Hologres的表类型分为内部表和外部表,其区别如下:
  • 内部表:可直接存储MaxCompute源数据。您可将MaxCompute源表数据同步至Hologres内部表中快速查询分析。该方式比创建外部表方式查询性能更好。

  • 外部表:不能直接存储MaxCompute源数据,但可将MaxCompute源表数据映射至Hologres外部表中,加速查询分析数据。该方式无冗余存储,无需导入导出数据,即可快速获取查询结果。

DataWorks作为数据加工的开发平台,提供了便捷的可视化建表方式,当需要创建多个Hologres外部表时,可参考一键MaxCompute表结构同步节点。同时,也可直接使用Hologres通过DDL语句建表,详情请参见CREATE FOREIGN TABLE

使用限制

  • 目前仅支持创建MaxCompute类型的Hologres外部表。

  • 当前仅华东2(上海)、华北2(北京)地域支持使用该功能。

操作步骤

  1. 进入数据开发页面。

    登录DataWorks控制台,单击左侧导航栏的数据建模与开发 > 数据开发,在下拉框中选择对应工作空间后单击进入数据开发

  2. 创建业务流程

    如果您已有业务流程,则可以忽略该步骤。

    1. 鼠标悬停至新建图标,选择新建业务流程

    2. 新建业务流程对话框,输入业务名称

    3. 单击新建

  3. 创建Hologres外部表。
    1. 鼠标悬停至新建图标,选择新建表 > Hologres >
    2. 新建表对话框,选择表类型外部表,并配置表所在的引擎、路径及名称等信息。
      输入表信息
  4. 配置Hologres外部表。
    在Hologres外部表的编辑页面,您可配置表的相关信息。
    1. 配置基础属性。
      基础属性表的主要基础属性如下。
      参数描述
      类型选择需要创建哪种类型的Hologres外部表。
      说明

      目前仅支持创建MaxCompute类型的Hologres外部表。

      服务器列表选择外部表连接MaxCompute数据源的服务器。
      说明 创建MaxCompute类型的外部表需调用Hologres底层已创建的odps_server外部表服务器。详细原理请参见postgres_fdw
      选择需要基于哪个MaxCompute源表创建Hologres外部表,后续使用该外部表查询MaxCompute源表数据。
      您需根据MaxCompute的项目模型类型配置相关参数:
      • 两层模型
        • project_name:MaxCompute的项目名称。
        • table_name:所查询的MaxCompute源表名称。
      • 三层模型
        • project_name:MaxCompute的项目名称及Schema名称,格式为odps_project_name#odps_schema_name
        • table_name:所查询的MaxCompute源表名称。
      说明 如果相关参数的配置与模型类型要求不符,则会产生报错。报错示例failed to import foreign schema:Table not found - table_xxx
    2. 配置业务信息。

      说明

      表的业务信息,仅是基于业务需求方便管理表使用,不涉及底层逻辑的实现。

      业务描述

      参数

      描述

      主题

      表所属的一级文件夹与二级文件夹。您可基于业务用途对表进行归类,将同类表挂载至相同文件夹中。

      说明

      一级主题、二级主题仅为DataWorks上文件夹的呈现形式,旨在方便您更好地管理表。

      层级

      表所属的物理数仓分层。层级是用来定义和管理数据仓库分层,通常分为贴源层、共享层和分析层。您可根据表的业务用途,将其挂载至合适的层级。

      说明

      单击新建图标可自定义层级。详细操作请参见表管理

      物理分类

      表的物理分类,即基于业务使用视角对表进行更详细的分类。通常包括基础业务层、高级业务层和其它。

      说明

      单击新建图标可自定义物理分类。详细操作请参见分类管理

    3. 配置表结构。
      表结构设计当步骤4中《配置基础属性》参数配置后,将在此界面展示该表的表结构。该结构将用于创建最终的Hologres外部表,会自动读取MaxCompute源表数据,不可编辑。
      说明 基于MaxCompute创建Hologres外部表时存在字段类型映射,外部表字段类型必须与MaxCompute源表字段类型一一对应。MaxCompute与Hologres的数据类型映射,请参见MaxCompute与Hologres的数据类型映射
  5. 提交并发布Hologres外部表。

    表结构定义完成后,您需将其提交至开发环境与生产环境,提交成功后才可在环境对应的引擎项目查看该表。

    说明

    如果您使用的是简单模式的工作空间,仅需将表提交至生产环境。简单模式与标准模式工作空间介绍,详情请参见必读:简单模式和标准模式的区别

    操作

    描述

    从开发环境加载

    用于从开发环境加载开发表的相关信息,并显示至当前页面。

    说明

    仅当表已被提交至开发环境后,才可执行该操作。执行该操作后,开发环境已创建的表信息会覆盖当前页面的表信息。

    提交到开发环境

    提交表至DataWorks的开发环境,即在开发环境对应的Hologres数据库创建当前表。

    提交后您可在DataWorks数据开发相应业务流程(即创建表时所选的路径)的Hologres目录,查看该表结构。

    从生产环境加载

    用于从生产环境加载生产表的相关信息,并显示至当前页面。

    说明

    仅当表已被提交至生产环境后,才可执行该操作。执行该操作后,生产环境已创建的表信息会覆盖当前页面的表信息。

    提交到生产环境

    提交表至DataWorks的生产环境,即在生产环境对应的Hologres数据库创建当前表。

后续步骤

Hologres外部表创建完成后,您可通过Hologre外部表周期性导入MaxCompute数据至Hologres内部表: