查询场景
本文介绍不同查询场景的测试方法与结果。
场景:在线报表查询
本测试并未完全依照TPC-H基准测试规范,而是基于该测试规范进行了修改。本测试结果不能等同于完全遵守TPC-H测试规范所获得的测试结果,因此不能与完全遵守该测试规范获得的测试结果进行对比。
业务背景
在线报表场景中,面向单表或者多表关联后的TopN,谓词过滤以及聚合计算是典型的分析计算需求。本示例通过一个面向零售行业的决策分析系统来展示AnalyticDB for MySQL的性能。数据模型是基于TPC-H实现的,更多信息可参见TPC-H测试集。
测试环境
AnalyticDB for MySQL企业版集群:
预留资源单节点规格:8 ACU
预留资源节点数:12
本次测试数据量为1TB。
测试结果
统计未派送订单明细,按照优先级(比如,订单客单价)排序。该报表数据可以用来跟踪订单派送的服务状态。
select l_orderkey, sum(l_extendedprice*(1-l_discount)) as revenue, -- 聚合:潜在的收入 o_orderdate, o_shippriority from customer, orders, lineitem where c_mktsegment = 'MACHINERY' -- 谓词过滤 and c_custkey = o_custkey and l_orderkey = o_orderkey and o_orderdate < date '1995-03-23' and o_orderdate > date '1995-02-23' -- 谓词过滤,指定时间 and l_shipdate > date '1995-03-23' and l_shipdate < date '1996-03-23' group by --分组操作 l_orderkey, --订单标识 o_orderdate, --订单日期 o_shippriority --运输优先级 order by revenue desc, --TopN:降序排序,把潜在最大收入列在前面 o_orderdate; limit 100;
测试结果如下:
产品
查询耗时
产品
查询耗时
AnalyticDB for MySQL
0.9s
统计某个地区零件供货商收入。该报表数据可以用于决策在给定的区域是否需要建立一个当地分配中心。
select n_name, sum(l_extendedprice * (1 - l_discount)) as revenue -- 聚合:潜在的收入 from customer, orders, lineitem, supplier, nation, region -- 六表连接 where c_custkey = o_custkey and l_orderkey = o_orderkey and l_suppkey = s_suppkey and c_nationkey = s_nationkey and s_nationkey = n_nationkey and n_regionkey = r_regionkey and r_name = 'EUROPE' -- 谓词过滤:指定地区 and o_orderdate >= date '1996-01-01' -- 谓词过滤:指定时间 and o_orderdate < date '1996-01-01' + interval '1' year and l_shipdate > date '1996-02-23' and l_shipdate < date '1996-03-23' group by n_name order by -- TopN:按收入降序排序,注意分组和排序子句不同 revenue desc limit 10
测试结果如下:
产品
查询耗时
产品
查询耗时
AnalyticDB for MySQL
1.0s
场景:交互式分析
本测试并未完全依照TPC-H基准测试规范,而是基于该测试规范进行了修改。本测试结果不能等同于完全遵守TPC-H测试规范所获得的测试结果,因此不能与完全遵守该测试规范获得的测试结果进行对比。
业务背景
交互式分析指的是业务人员通过BI工具或自助式查询平台进行自由的数据探索性查询场景,查询语句的主要特点是支持多维度组合、支持多表Join、包含聚合查询、包含子查询、包含过滤条件。交互式分析性能测试标准为TPC-H测试集,更多信息可参见TPC-H测试集。
测试环境
AnalyticDB for MySQL企业版集群:
预留资源单节点规格:8 ACU
预留资源节点数:12
测试结果(单位:秒,测试数据量为:1TB)
TPC-H查询
查询耗时
TPC-H查询
查询耗时
总计
107.41s
场景:数据仓库ETL
本测试并未完全依照TPC-DS基准测试规范,而是基于该测试规范进行了修改。本测试结果不能等同于完全遵守TPC-DS测试规范所获得的测试结果,因此不能与完全遵守该测试规范获得的测试结果进行对比。
业务背景
ETL场景指的是数据仓库中进行批量的数据清洗、转换和加工计算,通常扫描数据量比较大、计算逻辑复杂、关联表数量较多,计算时间比较长。ETL场景性能测试标准为TPC-DS测试集,更多信息可参见TPC-DS测试集。
测试环境
AnalyticDB for MySQL企业版集群:
预留资源单节点规格:8 ACU
预留资源节点数:12
测试结果(单位:秒,测试数据量为:1TB)
TPC-DS查询
查询耗时
TPC-DS查询
查询耗时
总计
397.19s
- 本页导读 (1)
- 场景:在线报表查询
- 场景:交互式分析
- 场景:数据仓库ETL