某BI系统构建在大数据计算服务MaxCompute上,某数据分析员在分析订单的地域分布时,需要把订单表order(占用存储空间约10G)与地域维表region(占用存储空间100M)关联起来,两张表的结构如下:createtableorder(order_idstring,region_idstring,order_amtbigint);createtableregion(region_idstring,region_namestring)在运行时发现由于订单大量集中在上海地区,数据的倾斜导致整体运行时间较长,运行的SQL语句如下:selectregion_name,sum(order_amt)amtfromordert1joinregiont2ont1.region_id=t2.region_id;此时可以考虑通过优化SQL的运行效率。

发布于 2021-04-25 12:43:08
【单选题】
A 使用mapjoinhint:select/*+mapjoin(t2)*/region_name,sum(order_amt)amtfromordert1joinregiont2ont1.region_id=t2.region_id;
B 使用mapjoinhint:select/*+mapjoin(t1)*/region_name,sum(order_amt)amtfromordert1joinregiont2ont1.region_id=t2.region_id;
C 调整两张表的位置:selectregion_name,sum(order_amt)amtfromregiont1joint2ont1.region_id=t2.region_id;
D 减小SQL的splitsize,增加计算资源

查看更多

关注者
0
被浏览
123
  • 体验AI问答!更聪明、超智能!
  • 一款基于GPT的超级AI助手,可以对话、创作、写文案!
1 个回答

撰写答案

请登录后再发布答案,点击登录

发布
问题

手机
浏览

扫码手机浏览

分享
好友

在线
客服