问:mapreduce原理
答:
1、简介:mapreduce源自google的一篇文章,将海量数据处理的过程拆分为map和reduce。mapreduce 成为了最早的分布式计算框架,
这样即使不懂的分布式计算框架的内部运行机制的用户,也可以利用分布式的计算框架实现分布式的计算,并在hadoop上面运行
2、设计思想:hadoop 文件系统 ,提供了一个分布式的文件系统,但是hadoop文件系统读写的操作都涉及到大量的网络的操作,
并不能很好的完成实时性比较强的任务。但是hadoop可以给上面的应用提供一个很好的支持。比如hadoop文件系统上面可以运行mapreduce。
mapreduce是一个计算的框架,mapreduce是一个分布式的计算框架,这样mapreduce利用分布式的文件系统,将不同的机器上完成不同的计算,
然后就计算结果返回。这样很好的利用了分布式的文件系统。
数据分布式的存储,然后计算的时候,分布式的计算,然后将结果返回。这样的好处就是不会涉及到大量的网络传输数据。
3、优点:mapreduce的计算框架的优点是,极强的扩展能力,可以在数千台机器上并发的执行其次,有很好的容错性,
另外,就是向上的接口简洁。用户只需要写map和reduce函数,即可完成大规模数据的并行处理。
4、缺点:mapreduce并不适合对实时性要求比较高的场景,比如交互式查询或者是流式计算。另外,也不适合迭代类的计算
(比如机器学习类的应用)。
5、mapreduce的启动时间比较长,对于批处理的任务,这个问题并不算大。但是对于实时性比较高的任务,其启动时间长的缺点就很不合适了。
6、mapreduce一次执行的过程里面往往涉及到多出磁盘读写,以及网络的传输。对于迭代的任务,这样很好的开销需要很多次,明显降低了效率。
7、而Storm和Spark,一个是流式计算的框架,一个是机器学习的框架。他们更适合解决这类型的任务。
JAVA-每日一面 2022-01-10
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 在上两次文章中我们给大家分享了,对于刚刚从事大数据行业和已从事大数据行业的面试者可能会遇到的专业面试题20道,如果...
- 今天给大家分享我在这次“金九银十”期间跳槽面试的几个大厂经历,总结了这次跳槽中整理的Java面试合集,其中大部分都...