关系代数 in Hadoop
2018-01-03 23:02
176 查看
1、选择,即where子句。
Map阶段过滤条件,输出键值对(record,null),即直接将符合条件的值写在键值上,Reduce阶段不做任何事,最后直接将Map的结果输出。
2、投影,即选择某几列的值
Map阶段以每条记录在几个属性上的值为键,键值为空,即((a1,a2,a3),null),Reduce阶段仅仅将Map的结果输出。
3、交运算 (R^T)
Map:
对于两张表R和T的每一条记录都以(r,1)的键值对输出。
Reduce:
汇总Map输出的结果,若有(r,2),则该条记录必为一个交集。
这里要保证相同记录发送到同一个Reduce节点,所以重写hashcode使相同对象的hashcode一定相同。
4、差运算 (R-T)
Map:
对于R和T两张表,每一条记录仪键值对(r,R)或(r,T)输出,即键值为记录,值为表名。
Reduce:
检查每一条记录r,若只有R没有T,则将该记录输出。
保证相同记录发送到同一个Reduce节点。
5、自然连接
Map:
对于R和T两张表,以id为键,其余属性值为值,例如,对R表,输出(1,(R,李志,20,91)),对T表,输出(1,(T,女,165))。
Reduce:
将同一键中所有的值根据它们的来源(R和T),分为两组,做笛卡尔积,然后将结果输出,例如,(1,张小雅,20,91,女,165)。
Map阶段过滤条件,输出键值对(record,null),即直接将符合条件的值写在键值上,Reduce阶段不做任何事,最后直接将Map的结果输出。
2、投影,即选择某几列的值
Map阶段以每条记录在几个属性上的值为键,键值为空,即((a1,a2,a3),null),Reduce阶段仅仅将Map的结果输出。
3、交运算 (R^T)
Map:
对于两张表R和T的每一条记录都以(r,1)的键值对输出。
Reduce:
汇总Map输出的结果,若有(r,2),则该条记录必为一个交集。
这里要保证相同记录发送到同一个Reduce节点,所以重写hashcode使相同对象的hashcode一定相同。
4、差运算 (R-T)
Map:
对于R和T两张表,每一条记录仪键值对(r,R)或(r,T)输出,即键值为记录,值为表名。
Reduce:
检查每一条记录r,若只有R没有T,则将该记录输出。
保证相同记录发送到同一个Reduce节点。
5、自然连接
Map:
对于R和T两张表,以id为键,其余属性值为值,例如,对R表,输出(1,(R,李志,20,91)),对T表,输出(1,(T,女,165))。
Reduce:
将同一键中所有的值根据它们的来源(R和T),分为两组,做笛卡尔积,然后将结果输出,例如,(1,张小雅,20,91,女,165)。
相关文章推荐
- 【数据库】关系代数基本运算
- hadoop退出安全模式Name node is in safe mode
- 数据库--ER模型、函数依赖、无损分解、关系代数
- java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries
- MapReduce 2.0 in Apache Hadoop 0.23
- Hadoop大家庭有哪些?Hadoop家族主要成员关系
- 话说"字号" -- "pt px in cm"关系深入挖掘
- 学习笔记—关系代数的思维导图
- HADOOP:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable终于解决了
- 使用hadoop命令警告提示:Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
- NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java class
- Attempt time threshold of job running in hadoop
- 4, org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, in
- Hadoop Hive与Hbase关系 整合
- 关系代数运算
- hadoop下 Type mismatch in value from map的问题
- 关于关系代数中除法的理解以及如何用基本运算表示除法
- bug:ERROR org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode: Exception in doCheckpoint
- hadoop2.2.0安装中遇到的错误:mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid
- 数据库之关系代数