题目
MapReduce 优缺点
答案
优点: 1. MapReduce 易于编程-MR:简单地实现一些接口,就可以完成一个分布式的程序 2. 良好的扩展性:分布式程序可以分不到大量的廉价PC机器上运行,计算资源不够时,可以通过简单的增加机器数量来拓展集群的计算能力 3. 高容错性:当集群中的节点宕机后,Hadoop自动完成将宕机节点的计算存储任务重新分配到正常运行的节点上 4. 适合 PB 级以上海量数据的离线处理:可以实现上千台服务器集群并发工作,提供超强的数据处理能力 缺点: 1. 不擅长实时计算(I/O 操作多,落盘):MapReduce无法像Mysql一样,在毫秒级或者秒级内返回计算结果 2. 不擅长流式计算:流式计算的数据输入是动态的,而MapReduce的数据输入是静态的,不能动态变化。 3. 不擅长类似于DAG(有向无环图)的串行计算:每个MapReduce作业的输出结果都会写到磁盘,会造成大量的磁盘IO,导致性能非常低下。