文档首页> 数据湖探索 DLI> 最佳实践> 数据分析> PowerBI工具对接DLI Trino
更新时间:2024-04-29 GMT+08:00

PowerBI工具对接DLI Trino

应用场景

Power BI 是一个统一、可扩展的自助服务和企业商业智能 (BI) 平台。您可以利用它连接到任何数据并实现数据可视化,并将视觉对象无缝融入您的日常应用中。

华为云DLI服务通过对数据的融合分析处理,为PowerBI提供标准的、有效的高质量数据,供给后续的数据统计分析使用,帮助企业进行数据决策。

更多PowerBI信息,请参见PowerBI

方案架构

DLI Trino对接PowerBI的方案架构是使用VPCEP打通DLI与PowerBI之间的网络连通。

图1 架构图

约束限制

  • Trino引擎队列仅支持HTTPS协议的连接方式。
  • 使用Trino引擎时,所创建的SQL队列不支持扩缩容。

    如果需要调整队列CU的大小,需要先在弹性资源池下先删除队列后在弹性资源池下创建CU大小合适的Trino引擎的队列。

  • DLI Trino引擎处于公测阶段,如果有需要请联系客服申请开通。

    支持DLI Trino引擎的区域:华北-北京四、华东-上海一、中国-香港、亚太-曼谷、亚太-新加坡、非洲-约翰内斯堡

  • BI对接暂只支持使用Hive语法创建的外表。

流程指导

图2 PowerBI对接DLI Trino流程图

使用DLI Trino对接PowerBI的操作过程主要包括以下步骤:

  1. 创建DLI弹性资源池和队列
  2. 配置DLI集群的网络连通
  3. PowerBI安装及驱动安装
  4. 配置PowerBI对接DLI Trino
  5. 测试连接

方案优势

  • 大数据分析BI工具提供数据探索能力:PowerBI可以将数据转换成丰富的图表、表格、地图、仪表盘等多种形式,让数据更加直观、易懂。
  • 华为云DLI提供数据的融合分析处理能力:DLI支持与多种数据源的对接,通过SQL建表就可以完成数据源的映射。DLI提供强大的数据探索能力,可以通过数据筛选、排序、分组等方式深入 挖掘数据的潜力。
  • 通过PowerBI与华为云DLI对接实现数据实时接入、数据准确性高、数据处理效率高、数据可视化效果好:DLI和PowerBI对接后可以将不同数据源的数据整合在一起;DLI支持大数据处理,可以处理大量的数据并挖掘出数据的潜力,PowerBI可以对这些数据进行快速的可视化,提高数据分析的效率和精度。

资源和成本规划

表1 资源和成本规划

资源

资源说明

成本说明

OBS

DLI需要绑定OBS作为日志桶。

OBS的使用涉及以下几项费用:

  • 存储费用:静态网站文件存储在OBS中产生的存储费用
  • 请求费用:用户访问OBS中存储的静态网站文件时产生的请求费用
  • 流量费用:用户使用自定义域名通过公网访问OBS时产生的流量费用

实际产生的费用与存储的文件大小、用户访问所产生的请求次数和流量大小有关,请根据自己的业务进行预估。

DLI

本例使用弹性资源池创建SQL作业。

使用DLI的弹性资源池资源时,按照弹性资源池CU时进行计费。

VPCEP

用来打通FineBI与DLI的网络连接。

参考VPCEP的计费说明

ELB

ELB是将访问流量根据分配策略分发到后端多台服务器的流量分发控制服务。

参考ELB的计费说明

EIP

提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务

参考EIP的计费说明

步骤1:创建弹性资源池和队列

  1. 登录华为云数据湖探索管理控制台。
  2. 在左侧导航栏单击“资源管理 > 弹性资源池”,可进入弹性资源池管理页面。
  3. 在弹性资源池管理界面,单击界面右上角的“购买弹性资源池”。
  4. 在“购买弹性资源池”界面,填写具体的弹性资源池参数,具体参数填写参考如下。

    表2 参数说明

    参数名称

    描述

    计费模式

    按需计费/包年包月。

    区域

    选择所在的区域。不同区域的云服务之间内网互不相通;请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。

    项目

    每个区域默认对应一个项目,这个项目由系统预置。

    名称

    弹性资源池的具体名称。

    CU范围

    弹性资源池最大最小CU范围。

    描述

    创建的弹性资源池的描述信息。

    网段

    规划弹性资源池所属的网段。如需使用DLI增强型跨源,弹性资源池网段与数据源网段不能重合,弹性资源池设置后不支持更改。

    建议使用网段:

    10.0.0.0~10.255.0.0/16~19

    172.16.0.0~172.31.0.0/16~19

    192.168.0.0~192.168.0.0/16~19

    企业项目

    如果所建弹性资源池属于企业项目,可选择对应的企业项目。

    购买时长

    选择“包年/包月”计费模式时,需要选择“购买时长”。购买时长越长,优惠越多。可勾选“自动续费”,按月购买,自动续费周期为1个月。按年购买,自动续费周期为1年。

    标签

    使用标签标识云资源。

  5. 参数填写完成后,单击“立即购买”,在界面上确认当前配置是否正确。
  6. 等待弹性资源池状态变成“可使用”表示当前弹性资源池创建成功。
  7. 弹性资源池创建完成后,在弹性资源池下添加相应的SQL队列,所选引擎为Trino。

    如需购买SQL队列选择执行引擎时,请选择Trino。

步骤2:配置DLI集群的网络连通

  1. 在所创建的DLI队列管理里查看队列的终端节点服务信息。

    1. 在DLI的控制台单击“队列管理”。
    2. 找到对应的队列后,单击队列名称前,获取队列的终端节点服务信息。
      图3 终端节点服务信息

  2. 创建VPC终端节点。

    1. 登录VPC终端节点管理控制台。
    2. 单击“购买终端节点”。进入“购买终端节点”页面。
    3. 服务类型选择“按名称查找服务”。
    4. 在“服务名称栏”输入获取的终端节点服务信息,需去除端口号。

      示例:

      队列的终端节点服务信息为:xxx.3a715f69-b1b0-45d0-bc4a-d917137bcd08:18090

      服务名称栏输入:xxx.3a715f69-b1b0-45d0-bc4a-d917137bcd08
      图4 VPCEP页面

  3. 获取VPC终端节点的IP

    1. 在VPCEP的控制台的左侧单击“ VPC终端节点 > 终端节点”。
    2. 单击VPCEP节点的ID,在基本信息页面查看节点IP。
      图5 VPCEP节点IP

  4. 创建ELB

    1. 登录ELB的控制台。
    2. 在负载均衡器界面单击“购买弹性负载均衡”,根据界面提示配置参数。
      图6 弹性负载均衡器ELB

  5. 获取ELB的服务地址

    1. 在ELB控制台下找到“弹性负载均衡 > 负载均衡器”。
      图7 负载均衡器
    2. 单击进入所创建的负载均衡器的ID,单击“基本信息”查看ELB的信息,记录“IPv4公网IP”的信息。
      图8 独享型ELB

  6. 创建跨源

    1. 登录DLI的管理控制台。
    2. 在DLI管理控制台左侧导航栏中,选择“跨源管理 > 增强型跨源连接”。
      输入连接名称,选择步骤1所创建含有Trino引擎队列的弹性资源池,虚拟私有云,子网,详细参数介绍请参见表3
      图9 创建跨源连接
      表3 参数说明

      参数

      参数说明

      连接名称

      所创建的跨源连接名称。

      • 名称只能包含数字、英文字母、下划线。不能为空。
      • 输入长度不能超过64个字符。

      弹性资源池

      可选参数,用于绑定使用跨源连接的弹性资源池或队列。

      仅包周期和按需计费模式的专属队列支持绑定弹性资源池。

      已上线弹性资源池的region,在队列管理中创建的包年包月或按需专属队列会默认创建同名的资源池。

      说明:

      使用增强型跨源连接之前必须绑定队列且对等连接的状态是“active”。

      虚拟私有云

      目的数据源所使用的虚拟私有云。

      子网

      目的数据源所使用的子网。

      路由表

      显示子网实际绑定的路由表。

      说明:
      • 此处的路由表为目的数据源子网关联的路由表,不同于“路由信息”中的路由。“路由信息”中的路由为所绑定的队列下子网关联的路由表中的路由。
      • 目的数据源子网与队列所在子网为不同的子网,否则会造成网段冲突。

      标签

      使用标签标识云资源。

    3. 单击“确定”,完成连接创建。
    4. 验证跨源连接创建是否成功。

      单击已创建的跨源连接名称,查看连接状态,状态显示为已激活则证明跨源连接完成。

  7. 添加后端服务器组为VPC后端,跨VPC后端IP为所购买VPCEP的节点IP。

    1. 单击ELB控制台下的后端服务器组,单击创建后端服务器组。
    2. 选择之前所创建的负载均衡器,单击“下一步”进入添加后端服务器页面,再单击“下一步”进入确认配置页面,单击“立即创建”完成创建。
      图10 创建后端服务器组
    3. 在后端服务器组页面,单击创建好的后端服务器组操作列下的“添加后端服务器”添加后端服务器。

  8. 验证VPCEP与DLI的网络打通

    在后端服务组跨VPC后端页面下查看健康检查结果栏显示为正常则网络打通。

步骤3:PowerBI安装及驱动安装

  1. 安装PowerBI desktop版本

    在PowerBI官网选择对应的desktop版本进行下载

  2. 安装openlookeng odbc驱动

    安装本驱动前请确认当前具有管理员权限。

    1. 双击msi安装包,出现安装的欢迎界面,单击“Next”。
    2. 第二页为用户协议,勾选接受后单击“Next”。
    3. 第三页选择安装方式,建议选择“Complete”完整安装。
    4. 第四页选择安装路径,配置后单击“Next”。
    5. 完成上述安装设置后在最后一页单击“Install”开始安装。

      安装过程中会弹出cmd命令行窗口,为安装Driver组件的过程,待其完成后会自动关闭。至此完成了openLooKeng ODBC驱动的全部安装过程。

    完成后出现弹出窗口,如果以前配置过旧版本驱动的用户DSN可以勾选使DSN用于新安装的版本,单击“Finish”完成安装。

    图11 openlookeng odbc驱动

步骤4:配置PowerBI对接DLI Trino

  1. 停止ODBC服务
    1. 执行cd命令进入"C:\Program Files\openLooKeng\openLooKeng ODBC Driver 64-bit\odbc_gateway\mycat\bin "目录
      cd C:\Program Files\openLooKeng\openLooKeng ODBC Driver 64-bit\odbc_gateway\mycat\bin
    2. 执行 stop命令停止ODBC服务
      mycat.bat stop
  2. 替换JDBC驱动
    1. 拷贝驱动中获取的JDBC Jar包到“C:\ProgramFiles\openLooKeng\openLooKeng ODBC Driver 64-bit\odbc_gateway\mycat\lib”目录下。
    2. 并删除该目录下原始的“hetu-jdbc-1.0.1.jar”包。
  3. 编辑ODBC的“server.xml”文件的协议前缀。

    将“C:\Program Files\openLooKeng\openLooKeng ODBC Driver 64- bit\odbc_gateway\mycat\conf”目录中的“server.xml”文件的属性值 。'<property name="jdbcUrlPrefix">jdbc:lk://</property>' 修改为 '<property name="jdbcUrlPrefix">jdbc:presto://</property>'

  4. 配置用户名/密码方式连接

    在自定义路径,如“D:\”中新建“jdbc_param.properties”文件,添加如下内容:

    SSL=true
    user={账号名}/{用户名}/{项目ID} 
    password={密码} 
  5. 重启ODBC服务
    1. 执行cd命令进入"C:\Program Files\openLooKeng\openLooKeng ODBC Driver 64-bit\odbc_gateway\mycat\bin ”目录下
      cd C:\Program Files\openLooKeng\openLooKeng ODBC Driver 64-bit\odbc_gateway\mycat\bin
    2. 执行restart命令重启ODBC服务
       mycat.bat restart 
  6. 设置ODBC数据源(64 位)

    在window系统的控制面板中输入“odbc”搜索ODBC的管理程序, 点击设置ODBC数据源(64 位)。

    图12 设置ODBC数据源
  7. 添加驱动程序

    在驱动程序中选择“添加 > openLookeng ODBC 1.9 Driver > 确定”。

    图13 添加驱动程序
  8. 填写数据源信息

    参考图14填写名称和描述,单击“Next”。

    图14 填写数据源信息
  9. 配置相关信息
    • “Connect URL”为访问openlookeng的地址,填写方式为ip:port, 获取IP方式详见详细信息,获取端口详见
    • “Connect Config”为4“jdbc_param.properties”文件。
      properties文件内容示例:
      SSL=true
      user=xxx_d21/xx_352221/xxxxacc00a2e2
      password=xxxx12*

      数据连接的URL中ssl=true表示后端请求使用HTTPS方式,当前Trino引擎队列仅支持HTTPS协议方式。

    • “Catalog”配置为dli。
      图15 配置信息

步骤5:测试连接

  1. 单击“Test DSN”,连接成功即可,单击"next > finish", 完成测试。
    图16 测试连接
    图17 连接成功
  2. 使用PowerBI对接DLI,选择“获取数据 > 更多 > ODBC > 连接”。

    首次连接需要输入DLI控制台的登录密码。

图18 连接PowerBI

相关操作

  • Trino支持SQL语法,Trino SQL语法请参考Trino SQL语法,DLI trino引擎暂只支持SELECT查询操作