某BI系统构建在大数据计算服务上,某数据分析员在分析订单的地域分布时,需要把订单表order(占用存储空间约10G)与地狱维表region(占用存储空间100M)关联起来,两张表的结构如下:create table order( order_id string, region_id string, order amt bigint); create table region(region_id string, region_name string)在运行时发现由于订单大量集中在上海地区,数据的倾斜导致整体运行时间较长,运行的SQL语句如下:select region_name, sum(order_amt)amt from order t1 join region t2 on t1.region_id=t2.region_id;此时可以考虑通过()优化SQL的运行效率。
(A)使用mapjoin hint: select/*+mapjoin(t2)*/region_name,sum(order_amt)amt from order t1 join region t2 on t1.region_id=t2.region_id;
(B)使用mapjoin hint: select/*+mapjoin(t1)*/region_name,sum(order_amt)amt from order t1 join region t2 on t1.region_id=t2.region_id;
(C)调整两张表的位置:select region_name, sum(order_amt) amt from region t1 join t2 on t1.region_id=t2.region_id;
(D)减小SQL的splitsize,增加计算资源
参考答案
继续答题:下一题
更多阿里云大数据助理工程师认证(ACA)试题
- 1Maxcompute的某个带有Join的SQL运行效率很低,可以采取以下()措施来检验或者改善。
- 2以下()情况不适合使用Maxcompute mapjoin。
- 3MaxCompute SQL中,NULL与任何值按位或都为NULL。
- 4在阿里云大数据计算服务(MaxCompute,原ODPS)中,当一个用户被移除出项目空间 (project)后,与该用户有关的ACL授权仍然会被保留。一旦该用户以后被再添加到该项目空间时,该用户的历史的ACL授权访问权限将被重新激活。
- 5大数据计算服务(MaxCompute,原ODPS )SQL中支持join、left join、right join、full join等,对于连接条件描述正确的有:()。
- 6在为企业的IT系统做架构设计时,成本是一个很重要的考虑因素。对于分析型数据库 (Analytic DB,原ADS)和大数据计算服务(MaxCompute,原ODPS),前者使用了SSD盘存储数据,价格比较责,因此在两个产品都能实现的场景下,优先选择大数据计算服务,会降低用户的整体使用成本。