0
parallel-execution-2417440-zhs
53
38页
1次
墨值5
作者: 陈焕生
目录:
!"#$%& 的并行执行' (((((((((((((((((((((((((((((((( ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')'
术语说*'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')'
测试环境和数据'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')'
并行初体'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+'
串行执行'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+'
并行执行'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((','
小结'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('-'
生产.者模型'(((((((((((((((((((((((((((((((( ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('-'
/"0#1$#23 4'一次数据分'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('-'
生产.者模型工作原理'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('5'
小结'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('6'
如何阅读并行执行计划'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('6'
7897 方式4'两次数据分发'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( ((((((((((((((((((((((((((((((((((((((((((((':;'
小结'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':)'
<&=%>$#3&4'/"0#1$#23 7#2? 选择'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':)'
7#2? 4'是唯一合理的选择'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':)'
使用 @"0#1$#23 分发4'糟糕的性能'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':,'
小结4'/"0#1$# 2 3 7#2? 分发的陷阱'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':-'
A#"3>3>0B'C>2&'D0 >B4'消除分发的外开'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':5'
A#"3>3>0B'C>2&'D0 >B4'不需要数据分('((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':5'
E0A 大于分区数4'A#"3>3>0B'C>2&'D0>B 不会'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((':6'
小结'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((');'
数据斜对不同分发方式的影响'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((');'
<&=%>$#3& 方式4'不受数据斜的影响'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('):'
7#2? 4'数据斜造成执行倾斜'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('))'
小节'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('),'
7897'D!FG'/HIIJ<JE4'连续 ?#2? 发时执行计划中的阻塞点'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((('),'
使用 /"0#1$#23 分发4'没有阻塞点('(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('),'
连续 ?#2? 4'行计划出阻塞点'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')K'
小结'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')5'
7#2?'L0>B 和布隆过滤'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')5'
关于布隆过滤('(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( ')5'
布隆过滤对 ?#2?'L0>B 性能的改'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')M'
使用布隆过滤时的性能'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((')M'
不使用布隆过滤时的性能'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( (((((((((((((((((((((((((((((((((((((((((((((((')6'
7897 发时布隆过滤的生成4'传输4'合并与使用'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+;'
小结'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+:'
并行执行划中典型的串行点'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+:'
<0NBOP4'致并行行计划效率低下'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+)'
自定 AQR9SQ 函数没有 =#"#%%&%T&B#@%&4'致无法并行'(((((((((((((((((((((((((((((((( (((((((((((((((((((((('+,'
并行 EU Q4'没有 &B #@%&'=#"#%%&%'1P%4'导致 EUQ 操作无法并行('((((((((((((((((((((((((((((((((((((((((((((((((((((('+-'
小节'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+5'
总结'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+5'
致谢'(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+M'
!
"!
作者简介*'((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((('+M'
'
!"#$%& 的并行执行是一种分而治之的方法('执行一个 2V% 4'分配多个并行进程同时执行数据扫描4'
连接以及聚合操作4'使用更多的资源4'得到更快的 2V% 响应时间('并行执行是充分利用硬件资源4'
处理大量数据时的核心技术('
'
在本文中4'在一个简单的星型模型上4'我会使用大量例子和 2V %'P0B>30" 报告4'力求以最直观简单
的方式4'向读者阐述并行执行核心内容*'
!"#$%& 并行执行为什么使用生产者.消费者模型('
如何阅读并行执行计划('
不同的数据分发方式分别适合什么样的场景(''
使用 =#"3>3>0B'N>2&'L0>B 和并行执行的组合提高性能('
数据倾斜会对不同的分发方式带来什么影响('
由于生产者.消费者模型的限制4'执行计划中可能出现阻塞点('
布隆过滤是如何提高并行执行性能的('
现实世界中4'使用并行执行时最常见的问题('
'
:( 9*'时间单位秒('
)( W*'数量单位一千('
+( U*'数量单位一百万4'或者时间单位分钟('
,( E0A*'E&X"&&'0Y'A#"#%%&%>2P4'并行执行的并行度('
K( SZ*'并行查询的 SO&"['Z00"1>B#30"('
-( A\ 进程*'A#"#%%&%'J]&$O3>0B'9%#^&2('
5( 889*'8^&"#X&'#$3>^&'2&22>0B4'并行执行时平均的活动会话('
M( 分发*'=V'1>23">@ O 3>0 B 'P&3?014'并行执行的分发方式4'包括 "&=%>$#3&4'@"0#1$ #234'? # 2 ? #1#=3>^&
分发', 种方式4'其中 #1#=3>^& 分发是 :)$ 引入的的新特性4'将在本篇文章中一一阐述('
6( 7#2?'L0>B 的左边*'驱动表4'3?&'@O>%1'2>1& '0Y'?#2? 'L0>B4' 一般为小表('
:;( 7#2?'L0>B 的右边*'被驱动表4'3?&'="0@&'2>1&'0Y'?#2?'L0>B4'一般为大表('
::( 布隆过滤*'@%00P'Y>%3&"4'一种内存数据结构4'用于判断一个元素是否属于一个集合('
'
!
!"#$%& 版本 :)(:(;()()4'两个节点的 <8Z4'硬件为 J]#1#3#'\+.M('
是一个典型的星型模型4'实表 %>B&0 "1 & "' + 亿行记4'维度表 =#"3R$O230P&"'分别包含 :()U
:(KU 行记录4'+ 个表都没有进行分区4'%>B & 0 "1 &" 大小接近 +;_/('
!
表名
行数
%>B&0"1&"'
+;;;;KM::'
=#"3'
:);;;;;'
$O230P&"'
:K;;;;;'
select
owner seg_owner,
segment_name seg_segment_name,
round(bytes/1048576,2) SEG_MB
from
of 38

评论

最新上传
暂无内容,敬请期待...
下载排行榜
周榜月榜总榜
近期活动
全部
暂无活动,敬请期待...
相关课程
全部
暂无课程,敬请期待...