CTS测试--subplan验证问题

cts 测试过程中由于某个模块fail项太多,整跑模块又太过耗时。所以需要使用subplan来进行快速测试验证。

1.在与result文件夹同级目录下创建subplans文件夹

2.在subplans文件中创建需要测试验证的fail项的xml文件,建议用fail项的模块进行命名。

3.执行测试命令:run cts -o --subplan [需要运行的xml文件]

fail测试项的xml文件内容如下

<?xml version='1.0' encoding='UTF-8' standalone='no' ?>
<SubPlan version="2.0">
  <Entry include="CtsAppTestCases android.app.cts.NotificationManagerTest#testNotify" />
</SubPlan>

 

1.以下sql,使用了subplan+broadcast, 请根据语义合理优化该sql, 使其运行效率更高效 select * from user01.tb1 t1 where exists (select max(id) from user01.tb2 t2 where t1.name=t2.name); 2.以下SQL, t1表使用了broadcast算子,请使用 hint 优化,避免t1表使用 broadcast select t1,id,t2.id2 from user01.tb1 t1 inner join user01.t_skew t2 on t1.id=t2.id2 and t1.name='beijing' order by 1; 3.如何判断下列语句是否下推,请写出判断方法: select count(t1.*) from user01.tb1 t1 left join user01.tb2 t2 on t1.id=t2.td and t2.name ='beijing' 4.下列语句的执行计划中,优化器选择表他作为hash内表,t2作为hash外表,请使用hint调整执行计划,使t2做hash内表 select t1.id,t2.id2 from user01.tb1 t1 inner join user01.t_skew t2 on t1.id=t2.id2 and t1.name ='beijing' order by 1 5.将schema权限赋予用户user1 将schema s2下所有表的访问权限赋予用户user1 6.gsql开创建数据库usdb,指定字符集utf-8,限制连接数20启时间检查命令 7.创建名为us01的用户,并将sysadmin权限授权给他 8.创建数据库usdb,指定字符集utf-8,限制连接数20 9.下面的语句的执行计划中州优化器选择了nestloop的关联方式,请根据语义修改语句,其实关联方式变为hashion,以提升查询性能 select * from user01.tb1 t1 where t1.id not in(select t2.id from user01.tb2 t2 where t2.name='shanghai'); 改写参考: select * from user01.tb1 t1 where not exists (select 1 from user01.tb2 t2 where t2.name='shanghai' and t1.id=t2.id) and t1.id is not null; 10.1、下面的执行计划存在性能问题,已知该集群有10个dn,且 select reltuples from pg class Where relname='t1'; 结果为123456798765,请根据执行计划分析,判断性能瓶颈,并给出优化建议: id | operation | E-rows | E-memory | E-width | E-costs ----+-------------------------------+-----------+---------------+-----------|---------- 1 |->Streaming (type: GATHER) | 100 | | 12 | 114.24 2 | ->Hash Join(3,4) | 100 | 1MB | 12 | 111.05 3 | ->Seq Scan on t2 | 100000 | 1MB | 4 | 91.50 4 | ->Hash | 96 | 16MB | 8 | 3.56 5 | ->Streaming(type: BROADCAST) |100| 2MB | 8 | 3.56 6 | ->Seg Scan on t1 | 100 | 1MB | 8 | 3.06
最新发布
07-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值