Quick BI为您提供海量数据的实时在线分析服务以及丰富的可视化效果,您可以通过拖拽式操作或SQL语句方式,轻松地完成数据分析、业务数据探查及报表制作。本文为您介绍如何使用交互式分析Hologres连接Quick BI,并进行可视化分析。
背景信息
Hologres与Quick BI高效连通,支持通过Hologres数据源直接连接Quick BI,将Hologres高效查询的数据直接进行可视化分析。
说明 当前Quick BI高级版和专业版支持Hologres数据源,其余版本请使用PostgreSQL数据源,更多关于PostgreSQL数据源的操作请参见
阿里云数据源PostgreSQL。
本文以高级版Quick BI为例,为您演示连接Hologres并进行可视化分析的相关操作。
使用限制
- Quick BI当前仅支持使用公共网络和经典网络连接Hologres,不支持使用VPC网络连接Hologres。
- 您无需在Hologres中配置白名单即可连接至Quick BI。
- Hologres连接Quick BI时,您需要根据Quick BI的版本选择相应的数据源,推荐使用Hologres数据源。
- Quick BI当前仅支持在使用公网或者指定VPC网络时,进行白名单限制。
使用Quick BI进行可视化分析
- 登录Quick BI管理控制台。
- 添加数据源。
- 在Quick BI管理控制台页面,单击顶部菜单栏的工作空间。
- 在工作空间页面左侧导航栏,单击数据源。
- 在数据源页面,单击右上角的新建数据源。
- 选择目标数据源并配置相应参数。
- 选择Alibaba Hologres数据源。

- 配置添加Hologres数据源的各项参数。

- 参数配置(使用指定VPC网络连接Hologres)。
参数名称 | 描述 | 说明 |
---|
显示名称 | 按照您的需求填写,用于分辨数据源使用。 | 无 |
数据库地址 | Hologres实例的指定VPC网络域名。 | 您可以登录管理控制台,进入实例详情页,从网络信息的域名列获取指定VPC的域名。
说明 此处不包含端口,例如:hgpostcn-cn-nwy364b5v009-cn-shanghai-vpc-st.hologres.aliyuncs.com |
端口 | Hologres实例的指定VPC网络端口。 | 您可以登录管理控制台,进入实例详情页,从网络信息的域名列获取指定VPC的域名的端口。 |
数据库 | 连接的Hologres实例的数据库名称。 | 您可以登录管理控制台,进入实例详情页,从DB管理页面获取。 |
Schema | 默认为public Schema。 | 您可以使用新创建的Schema,在数据源配置了Schema后,列表中会展示当前Schema下所有的表。但是在使用即席SQL时,还需要在表名称前手动添加对应的Schema名(即schema.table),才能正确索引到Schema下面的表。 |
用户名 | 当前账号的AccessKey ID。 | 您可以单击AccessKey 管理,获取AccessKey ID。 |
密码 | 当前账号的AccessKey Secret。 | 您可以单击AccessKey 管理,获取AccessKey Secret。 |
VPC数据源开关 | 需要勾选该开关 | 无 |
购买者accessId | 购买实例用户的AccessKey ID。 | 无 |
购买者accessKey | 购买实例用户的AccessKey Secret。 | 无 |
实例id | Hologres实例ID | 无 |
区域 | Hologres实例所在的地域。 | 无 |
- 参数配置(使用公网连接Hologres)。
参数名称 | 描述 | 说明 |
---|
显示名称 | 按照您的需求填写,用于分辨数据源使用。 | 无 |
数据库地址 | Hologres实例的公网网络域名。 | 您可以登录管理控制台,进入实例详情页,从网络信息的域名列获取公网的域名。 |
端口 | Hologres实例的公网网络端口。 | 您可以登录管理控制台,进入实例详情页,从网络信息的域名列获取公网域名的端口。 |
数据库 | 连接的Hologres实例的数据库名称。 | 您可以登录管理控制台,进入实例详情页,从DB管理页面获取。 |
Schema | 默认为public Schema。 | 您可以使用新创建的Schema,在数据源配置了Schema后,列表中会展示当前Schema下所有的表。但是在使用即席SQL时,还需要在表名称前手动添加对应的Schema名(即schema.table),才能正确索引到Schema下面的表。 |
用户名 | 当前账号的AccessKey ID。 | 您可以单击AccessKey 管理,获取AccessKey ID。 |
密码 | 当前账号的AccessKey Secret。 | 您可以单击AccessKey 管理,获取AccessKey Secret。 |
VPC数据源开关 | 需要关闭该开关 | 无 |
- 参数配置(使用经典网络连接Hologres)。
参数名称 | 描述 | 说明 |
---|
显示名称 | 按照您的需求填写,用于分辨数据源使用。 | 无 |
数据库地址 | Hologres实例的经典网络域名。 | 您可以登录管理控制台,进入实例详情页,从网络信息的域名列获取经典网络的域名。
说明 此处不包含端口,例如:hgpostcn-cn-nwy364b5v009-cn-shanghai-vpc.hologres.aliyuncs.com |
端口 | Hologres实例的经典网络端口。 | 您可以登录管理控制台,进入实例详情页,从网络信息的域名列获取经典网络域名的端口。 |
数据库 | 连接的Hologres实例的数据库名称。 | 您可以登录管理控制台,进入实例详情页,从DB管理页面获取。 |
Schema | 默认为public Schema。 | 您可以使用新创建的Schema,在数据源配置了Schema后,列表中会展示当前Schema下所有的表。但是在使用即席SQL时,还需要在表名称前手动添加对应的Schema名(即schema.table),才能正确索引到Schema下面的表。 |
用户名 | 当前账号的AccessKey ID。 | 您可以单击AccessKey 管理,获取AccessKey ID。 |
密码 | 当前账号的AccessKey Secret。 | 您可以单击AccessKey 管理,获取AccessKey Secret。 |
VPC数据源开关 | 需要关闭该开关 | 无 |
- 参数配置完成后,您可以单击连接测试,测试Quick BI与Hologres的连接状态:
- 如果显示数据源连通性正常,则表示Quick BI与Hologres连接成功。
- 如果显示数据源连通性异常,请检查参数是否正确,则表示Quick BI与Hologres连接失败。请根据报错信息处理异常。
- 单击确定,完成配置。
- 可视化分析数据。
成功连接数据源后,在页面,单击已创建的数据源,显示当前数据库中的所有表。
- 如果您希望使用界面化操作完成数据的可视化分析,则可以使用拖拽方式。
- 如果您希望使用SQL语句完成数据的可视化分析,则可以使用即席分析SQL方式。
两种方式的具体操作如下:
时间筛选控件最佳实践
在Hologres创建表时,您可以设置Segment_key(别名event_time_column)属性,对时间类型过滤条件进行索引优化,防止全表扫描并加速查询。Hologres默认把表中第一个时间戳类型作为Segment_key。
Quick BI支持高级的SQL占位符功能,您可以使用SQL占位符来设置时间控件。更多SQL占位符信息,请参见自定义SQL。
- 设置时间筛选字段占位符。
执行以下步骤前,需要在Hologres创建名称为LINEITEM的内部表,并且将MaxCompute公共空间MAXCOMPUTE_PUBLIC_DATA中public.odps_lineitem_10g表的数据导入到LINEITEM表中,详细步骤请参见
Hologres查询体验快速入门。
- 在Quick BI管理控制台的数据源页面,单击右上角的SQL创建数据集,进入新建代码片段对话框。
- 输入以下SQL语句,从LINEITEM表中取出时间戳数据。
SELECT
*
FROM
"public"."lineitem" AS AME_T_1_
WHERE
AME_T_1_."l_shipdate" >= TO_TIMESTAMP('${report_date.get(0)}', 'yyyy-MM-dd hh24:mi:ss')
AND AME_T_1_."l_shipdate" <= TO_TIMESTAMP('${report_date.get(1)}', 'yyyy-MM-dd hh24:mi:ss')
- 单击参数设置,设置SQL占位符。
- 在变量类型下拉列表选择“日期-年月日时分秒 > YYYY-MM-DD HH-MI-SS”。
- 单击确定后,单击确认编辑。
- 在仪表板编辑页面,单击新建筛选项,在查询条件设置对话框,字段选择所设置的SQL占位符。
- 在仪表板编辑页面,单击查看SQL,获取到如下SQL。
SELECT
AME_T_1_."l_shipmode" AS T_A0_2_,
AME_T_1_."l_shipinstruct" AS T_A1_3_,
SUM(AME_T_1_."l_extendedprice") AS T_A2_4_
FROM
"public"."lineitem" AS AME_T_1_
WHERE
AME_T_1_."l_shipdate" >= TO_TIMESTAMP('1993-01-01 00:00:00', 'yyyy-MM-dd hh24:mi:ss')
AND AME_T_1_."l_shipdate" <= TO_TIMESTAMP('1998-12-31 23:59:59', 'yyyy-MM-dd hh24:mi:ss')
GROUP BY
AME_T_1_."l_shipmode",
AME_T_1_."l_shipinstruct"
LIMIT
1000 OFFSET 0
- 验证Segment_key是否生效。
您可查看SQL的执行计划中是否有Segment Filter的关键字出现以验证Segment_key是否生效。
- 登录Hologres管理控制台,单击左侧实例列表。
- 在实例详情页左侧导航栏,单击Database管理。
- 在DB授权页面,单击SQL编辑器。
- 在SQL编辑器页面,单击左上角的新建SQL窗口。
- 在新增的临时Query查询页面,选择已创建的实例名和数据库后,请您在SQL查询的编辑框输入如下语句,单击运行。
以下SQL语句用来查看获取到SQL的执行计划,用于验证Segment_key是否生效。

explain SELECT
AME_T_1_."l_shipmode" AS T_A0_2_,
AME_T_1_."l_shipinstruct" AS T_A1_3_,
SUM(AME_T_1_."l_extendedprice") AS T_A2_4_
FROM
"public"."lineitem" AS AME_T_1_
WHERE
AME_T_1_."l_shipdate" >= TO_TIMESTAMP('1993-01-01 00:00:00', 'yyyy-MM-dd hh24:mi:ss')
AND AME_T_1_."l_shipdate" <= TO_TIMESTAMP('1998-12-31 23:59:59', 'yyyy-MM-dd hh24:mi:ss')
GROUP BY
AME_T_1_."l_shipmode",
AME_T_1_."l_shipinstruct"
LIMIT
1000 OFFSET 0
- 在结果页签中获取执行计划,如下。
-> Limit (cost=0.00..1.01 rows=1 width=24)
-> Partial HashAggregate (cost=0.00..1.01 rows=1 width=24)
Group Key: l_shipmode, l_shipinstruct
-> Redistribute Motion (cost=0.00..1.01 rows=10 width=24)
-> Result (cost=0.00..1.01 rows=10 width=24)
-> Partial HashAggregate (cost=0.00..1.01 rows=10 width=24)
Group Key: l_shipmode, l_shipinstruct
-> Parallelism (Gather Exchange) (cost=0.00..1.01 rows=32 width=24)
-> Result (cost=0.00..1.01 rows=32 width=24)
-> DecodeNode (cost=0.00..1.01 rows=32 width=24)
-> Partial HashAggregate (cost=0.00..1.01 rows=32 width=24)
Group Key: l_shipmode, l_shipinstruct
-> Index Scan using holo_index:[1] on lineitem (cost=0.00..1.00 rows=1000 width=24)
Segment Filter: ((l_shipdate >= '1993-01-01 00:00:00+08'::timestamp with time zone)
执行计划中,出现了Segment Filter,说明Segment_key已生效,您可以使用SQL占位符创建的时间控件。