Hadoop In Action笔记(逐渐更新)


分布式系统与Hadoop:代码向数据迁移的理念

SQL数据库与Hadpoop:(1)文件,图片不适合关系型数据库模型,大型数据集往往是半结构化的,使用键值对作为基本数据单元

(2)MapReduce代替原来的SQL (3)适合一次写入多次读取的数据存储需求

MapReduce:Mapper, Reducer,一旦MapReduce应用程序写好了,可以极易扩展至几千台机器


Map的输入为一个List(<K1,V1>),如处理多个文件的输入为List(<String file_ name, String file_content>), 在mapper的map函数对将每个<K1,V1>键值进行拆分,K1经常备忽略,将原来的<K1,V1>转换并放入<K2,V2>键值对的列表,如对于单词统计map将List(<String file_ name, String file_content>)转为List(<String word, interger num>).

接着将Map的输出一个巨大的List(K2,V2),根据相同Key的原则又被组织成新的键值对<K2,List(V2)>, Reducer将处理聚合后的每一个<K2,List(V2)>输出List(<K3,V3>)


用Java写的Hadoop应用程序被打包成一个jar进行执行,比如bin/hadoop jar <jarName> 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值