美文网首页
JAVA-每日一面 2022-01-10

JAVA-每日一面 2022-01-10

作者: YangEvol | 来源:发表于2022-01-10 21:01 被阅读0次

    问: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

          本文链接:https://www.haomeiwen.com/subject/bsrvcrtx.html