全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管百科 爱问频道
2147 0
2015-02-12
1.选择运算
Map函数:对R中的每个元组t,检查它是否满足条件C。如果满足就产生键值对
                 (t,t).
Reduce函数:Reduce函数作用类似于恒等式,仅仅将每个键值对传递到输出部分。

   2.投影运算
Map函数:对R中的每个元组t,通过剔除t中属性不在S中的字段得到元组t‘,输出键值对(t',t').
Reduce函数:对任意Map任务产生的每个键t’,将存在一个或多个键值对(t',t'),Reduce函数将(t',[t',..,t'])转换成(t',t'),以保证对
                      该键t'只产生一个(t',t')对。

   3.并、交、差运算
(1)并
Map函数:将每个输入元组t转换为键值对(t,t)
Reduce函数:和每个键t关联的可能有一个或两个值,两种情况下都输出(t,t)
(2)交
Map函数:将每个输入元组t转换为键值对(t,t)
Reduce函数:如果键t的值表为[t,t],则输出(t,t),否则输出(t,NULL)
(3) 差 关系R-S的差
Map函数:对于R中的元组他,产生键值对(t,R),对于S中的元组t,产生键值对(t,S)。需要注意的R,S是名称不是整个关系本身。
Reduce函数:对每个键进行如下处理:
                    a)如果关联的值表是[R],输出(t,t);
                    b)如果相关联的值表是其他情况,包括[R,S],[S,S]或[S],(t,NULL).

   4.自然链接运算  将R(A,B)和S(B,c)进行自然链接运算
Map函数:对R中的每个元组(a,b)生成键值对(b,(R,a)),对S中的每个元组(b,c)生成键值对(b,(S,c))
Reduce函数:每个键值b会与一系列对相关联,这些对要么来自(R,a),要么来自(S,c),基于(R,a)和(S,c)构建的所有对。键b对应的
                      输出结果是(b,[(a1,b,c1),(a2,b,c2),...]),也就是说与b相关联的元组列表由来自R和S的中的具有共同b值的元组组
                      合而成。

   5.分组聚合运算  对R(A,B,C)施加运算Gamma_{A,theta(B)}(R)
Map函数:对每个元组(a,b,c),生成键值对(a,b)
Reduce函数:每个键a代表一个分组,即对于键a关联的字段B的值表[b1,b2,...bn]施加theta操作,输出结果是(a,x)对,

1,2,5都是针对一个关系R的,3,4是针对两个关系R和S的。
[em25]复杂运算都在基础运算上进行。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群