- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
fourinone和hadoop的综合对比
fourinone-1.11.09
hadoop-0.21.0
体积
82K
71M
依赖关系
就一个jar,没有依赖
约12项jar包依赖
配置
就一个配置文件
较多配置文件和复杂属性
集群搭建
简单,每台机器放一个jar和配置文件
复杂,需要linux操作基础和ssh等复杂配置,还需要较多配置文件配置
计算模式
提供两种计算模式:包工头和工人直接交互方式,包工头和工人通过消息中枢方式交互,后者不需要工人节点可直接访问
计算更多倾向于文件数据的并行读取,而非计算过程的设计。JobTracke 跟TaskTracker直接交互, 查询NameNode后,TaskTracker直接从Datanode获取数据。
并行模式
N*N,支持单机并行,也支持多机并行,多机多实例并行
1*N,不支持单机并行,只支持多机单实例并行
内存方式
支持内存方式设计和开发应用,并内置完整的分布式缓存功能
以hdfs文件方式进行数据处理,内存方式计算支持很弱
文件方式
自带文件适配器处理io
Hdfs处理文件io
计算数据要求
任意数据格式和任意数据来源,包括来自数据库,分布式文件,分布式缓存等
Hdfs内的文件数据,多倾向于带换行符的数据
调度角色
包工头,可以有多个,支持链式处理,也支持大包工头对小包工头的调度
JobTracke,通常与NameNode一起
任务执行角色
农民工,框架支持设计多种类型的工人用于拆分或者合并任务
TaskTracker,通常与Datanode一起
中间结果数据保存
手工仓库,或者其他任意数据库存储设备
Hdfs中间结果文件
拆分策略
自由设计,框架提供链式处理对于大的业务场景进行环节拆分数据的存储和计算拆分根据业务场景自定义
以64m为拆分进行存储,以行为拆分进行计算
实现map接口,按行处理数据进行计算
合并策略
自由设计,框架提供农民工节点之间的合并接口,可以互相交互设计合并策略,也可以通过包工头进行合并
TaskTracker不透明,较少提供程序控制,合并策略设计复杂
实现reduce接口进行中间数据合并逻辑实现
内存耗用
无需要制定JVM内存,按默认即可,根据计算要求考虑是否增加JVM内存
需要制定JVM内存,每个进程默认1G,常常namenode,jobtracker等启动3个进程,耗用3G内存
监控
框架提供多环节链式处理设计支持监控过程,通过可编程的监控方式,给于业务开发方最大灵活的监控需求实现,为追求高性能不输出大量系统监控log
输出较多的系统监控log,如map和reduce百分比等,但是会牺牲性能,业务监控需要自己实现
打包部署
脚本工具
上传jar包到jobtracker机器
平台支撑
支持跨平台,windows支持良好
多倾向于支持linux,Windows支持不佳,需要模拟linux环境,并且建议只用于开发学习
其他
协同一致性、分布式缓存、通讯队列等跟分布式计算关系密切的功能支持
不支持
总结:
Hadoop并不是为了追求一个并行计算的框架而设计,提供快捷和灵活的计算方式去服务各种计算场景, 它更多的是一个分布式文件系统,提供文件数据的存储和查询,它的map/reduce更倾向于提供并行计算方式进行文件数据查询。而fourinone相反。
Fourinone和hadoop运行wordcount的对比测试(平均4核4g配置,输入数据为文件):
fourinone-1.11.09(n*4)
fourinone-1.11.09(n*1)
hadoop-0.21.0(n*1)
3台机器*256M
4s
12s
72s
3台机器*512M
7s
30s
140s
3台机器*1G
14s
50s
279s
19台机器*1G
21s
60s
289s
10台机器*2G
29s
5台机器*4G
60s
N*4说明:Fourinone可以充分利用单机并行能力,4核计算机可以4个并行实例计算,hadoop目前只能N*1;另外,可以由上图看出,如果要完成20g的数据,实际上fourinone只需要使用5台机器用60秒完成,比使用19台机器完成19g的hadoop节省了14台机器,并提前了200多秒
文档评论(0)