本文旨在为您介绍将原Lightning服务迁移到交互式分析(Hologres)的最佳实践。

背景介绍

MaxCompute Lightning是MaxCompute产品的交互式查询服务,支持以PostgreSQL协议及语法连接访问Maxcompute项目,支持您使用熟悉的工具以标准SQL查询分析MaxCompute项目中的数据,快速获取查询结果。但Lightning采用的是公共集群,多用户之前资源不隔离,当需要查询大量数据时,容易出现性能波动和资源排队等问题。同时尽管Lightning支持加速查询MaxCompute,但并不支持创建索引来提升查询速度。

交互式分析(Hologres)是一款兼容PostgreSQL协议的实时交互式分析产品,与大数据生态无缝打通,支持对PB级数据进行高并发、低延时的分析处理,在底层与MaxCompute无缝打通,支持直接新建外表快速查询MaxCompute数据,无需导入导出无冗余存储,同时也支持构建索引将MaxCompute数据导入至交互式分析查询,性能相比开源系统大大提升。交互式分析也提供JDBC/ODBC driver ,支持使用BI工具对数据进行多维分析透视和业务探索。

操作步骤

完整的操作步骤如下:

710
  1. 开通交互式分析实例

    在迁移lightning服务之前,需要您先开通交互式分析实例,详情请参见开通实例

    说明 交互式分析实例region必须同MaxCompute的region保持一致。
  2. 管控台查看实例

    实例开通成功之后,前往Hologres管控台查看实例信息。

    711
  3. 管控台新建数据库

    实例开通成功后,系统会默认生成一个名叫postgres的数据库,该数据库仅用于运维管控,分配的资源少,实际业务需要新建数据库。

    在Hologres管控台选择实例列表,单击实例名称,进入实例详情页,单击左侧菜单栏DB管理 > 新建DB,在新建DB的同时可以为开启简单权限模型,以简化授权操作,详情可以参见简单权限模型概述

    712
  4. 连接开发工具

    新建数据库成功之后,您连接原有的开发工具来进行开发:

    说明 开发工具原lightning的endpoint需要修改成对应的交互式分析endpoint,并使用交互式分析的公共网络地址。
  5. 新建外表加速查询MaxCompute

    交互式分析在底层与MaxCompute无缝打通,支持直接新建外部表加速查询MaxCompute,无需导入导出,无冗余存储。

    示例使用HoloStudio新建外部表加速查询MaxCompute,在HoloStudio开发界面,选择左侧菜单栏PG管理 > 外部表,输入相应的MaxCompute表名,即可索引出当前的MaxCompute字段,您可以根据需要选择查询全部/部分字段。更多详细信息可以参见MaxCompute数据直接查询

    713
  6. MaxCompute导入查询

    同时您可以通过构建索引,将MaxCompute数据导入至交互式分析再加速查询,性能相比开源系统大大提升,具体的操作步骤可以参见MaxCompute数据导入分析

  7. 授权子账号

    若您需要给子账号授权使用交互式分析,可以参见授权子账号进行操作。

  8. 对接BI可视化分析

    交互式分析(Hologres)兼容PostgreSQL生态,支持直接对接各种BI分析工具。需要您将原Lightning的Endpoint更改为现交互式分析的Wndpoint,再对接BI工具进行可视化分析。