搭建与管理(基于Hadoop)

更新时间:
复制为 MD 格式

通过MaxComputeHadoop构建湖仓一体方案旨在实现对海量数据的统一管理、存储和分析,提供了一个既能处理结构化、半结构化数据,又能满足高并发分析需求的一体化数据平台。本文为您介绍如何通过MaxComputeHadoop构建湖仓一体,以及管理湖仓一体项目。

前提条件

  • 已开通MaxCompute服务并创建MaxCompute项目。详情请参见开通MaxCompute服务创建MaxCompute项目

    说明
    • 如果已经开通了MaxCompute服务,直接使用即可。如果未开通,建议开通时设置MaxCompute数据类型为Hive兼容。

    • 通过MaxComputeHadoop构建湖仓一体时,Hadoop集群所使用的VPCMaxCompute服务开通地域保持一致,这样可以免去跨地域网络产生的费用。

  • 当您通过MaxComputeHadoop构建湖仓一体时,Hadoop集群环境需开启高可用(HA)。具体详情,请咨询Hadoop集群运维人员。

使用限制

  • 仅华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华南1(深圳)、中国香港、新加坡和德国(法兰克福)地域支持构建湖仓一体能力。

  • MaxComputeHadoop集群所在的VPC必须部署在同一地域。

操作流程

步骤一:MaxCompute访问授权

当您通过MaxComputeHadoop构建湖仓一体时,授权方法如下。授予MaxCompute在用户VPC内创建ENI网卡的权限,以实现MaxCompute到用户VPC的网络连通。您可以使用VPC所有者账号登录阿里云,单击授权进行授权。

步骤二:通过DataWorks构建湖仓一体

  1. 登录DataWorks控制台,在左上角选择地域。

    湖仓一体支持的地域,详情请参见适用范围

  2. 在左侧导航栏选择其他 > 数据湖集成(湖仓一体)

  3. 数据湖集成(湖仓一体)页面,单击现在开始创建

  4. 新建数据湖集成页面,按照界面指引进行操作。参数说明如下所示。

    表 2. 创建外部数据湖连接

    参数

    说明

    异构数据平台类型

    • 阿里云E-MapReduce/Hadoop集群:通过MaxComputeHadoop构建湖仓一体。

    • 阿里云DLF+OSS数据湖连接:通过MaxComputeDLFOSS构建湖仓一体。

    阿里云E-MapReduce/Hadoop集群

    网络连接

    选择或创建MaxCompute到阿里云E-MapReduceHadoop VPC网络的连接。参数详情,请参见网络开通流程中的创建MaxCompute与目标VPC网络间的网络连接步骤。

    说明

    选择外部数据源

    外部数据源保存了创建外部数据湖连接所需的URL、端口、用户鉴权等。选择或创建E-MapReduceHadoop外部数据源。参数详情,请参见3 外部数据源参数说明

    表 3. 外部数据源参数说明

    参数名称

    说明

    选择MaxCompute项目

    选择目标MaxCompute项目。您可以在项目管理页签查看MaxCompute项目名称。

    外部数据源名称

    自定义外部数据源名称。命名规则如下:

    • 名称只能包括小写字母、数字、下划线。

    • 名称需小于128个字符。

    网络连接对象

    MaxComputeE-MapReduceHadoop VPC网络的连接。详情请参见网络开通流程

    NameNode 地址

    目标Hadoop集群的ActiveStandby NameNode服务地址和端口号(端口号通常是8020)。具体详情,请您联系Hadoop集群管理员获取。

    HMS 服务地址

    目标Hadoop集群的ActiveStandby NameNodeHive元数据服务地址和端口号(端口号通常是9083)。具体详情,请您联系Hadoop集群管理员获取。

    集群名称

    Hadoop集群高可用环境下用于指代NameNode的名称。自构建Hadoop集群场景下,您可以通过hdfs-site.xml文件中的dfs.nameservices配置参数获取集群名称。

    认证类型

    MaxCompute通过账号映射的方式去Hadoop集群获取元数据和数据,映射的Hadoop账号往往会有认证授权机制(如Kerberos)保护,因此需要账户的认证授权信息文件。请根据实际情况进行选择,详情请咨询Hadoop运维人员。

    • 无认证方式:Hadoop集群没有开启Kerberos认证授权机制,选择此项。

    • Kerberos 账号认证:Hadoop集群开启Kerberos认证授权机制,选择此项。

      • 配置文件:上传Hadoop集群中的krb5.conf文件。

        说明

        如果Hadoop集群搭建在Linux操作系统上,krb5.conf文件一般位于Hadoop HDFS namenode master节点的 /etc目录下。

      • hmsPrincipals:HMS服务身份标识。您可以在Hadoop集群Kerberos终端,用list_principals命令获取HMS Principals。该选项示例如下所示。

        hive/emr-header-1.cluster-20****@EMR.20****.COM,hive/emr-header-2.cluster-20****@EMR.20****.COM
        说明

        不同节点的服务信息是以逗号分隔的字符串,且每个PrincipalsHMS服务地址一一对应。

      • 添加配置引擎权限映射

        • 云账号:使用MaxCompute访问Hadoop集群的阿里云账号。

        • kerberos账号:Kerberos授权的具有Hive访问权限的Hadoop用户账号。

        • 上传文件:上传Kerberos账号的keytab配置文件。具体生成方式,请参见生成keytab配置文件

    表 4. 创建目标数据映射

    参数

    说明

    选择外部数据源对象

    默认与选择外部数据源一致。

    映射目标数据库

    Hadoop集群目标数据库。

步骤三:通过DataWorks管理湖仓一体

DataWorks数据开发中查看外部项目元数据信息

  1. 登录DataWorks控制台,在左上角选择地域。

  2. 在左侧导航栏选择工作空间

  3. 工作空间列表页面,单击目标工作空间对应的操作快速进入 > Data Studio

  4. Data Studio页面,单击左侧导航栏image图标,在数据目录中单击MaxCompute,在右侧MaxCompute - 项目页签,添加已有外部项目或新建项目。

  5. 单击目标表名称即可在下方查看表结构信息。

    说明
    • 表中的元数据信息为T+1更新,即在映射端(如Hive中)修改表结构,则T+1地体现在DataWorks数据地图中(MaxCompute引擎侧为实时元数据)。

公共表面板中,通过搜索框输入关键字可快速筛选外部项目表。选中目标表后,下方显示列信息分区信息数据预览页签,展示表的详细结构。在右侧SQL编辑器中,可编写并运行针对外部表的查询语句,查询结果展示在下方结果页签中。

相关文档

基于Hadoop集群支持Delta LakeHudi存储机制的湖仓一体方案,请参见基于Hadoop集群支持Delta LakeHudi存储机制