首页 > 其他分享 >3/24MapReduce面试必看

3/24MapReduce面试必看

时间:2024-05-22 15:43:50浏览次数:20  
标签:map shuffle 必看 面试 reduce maptask 切片 24MapReduce 排序

  1. 本质上是三个进程运行,一个maptask 一个reducetask  一个MR程序
  2. 写程序  添加依赖后,mapper reducer  driver yarn集群的配置
  3. 为了实现数据落盘和网络传输还要进行序列化和反序列化,本质就是将各个结构体里的基本数据类型一一传递  实现writable接口 顺序要一致
  4. 输入和输出基本都是keyv
  5. 如果还要排序那么要实现comparade接口
  6. mapper类 首先要定义输入还是输出?输出!的键值对类型  主要还是要实现map方法,reduce同理  driver是获取配置后将map和reduce关联起来
  7. driver 主要是拿到job对象,提交job

     

     

  8. 这个资源到底是什么?终于解惑 ,其实就是并行度切片文件,切片节点,长度,jar包,job的xml文件  yarn根据切片决定启多少maptask,这才需要访问hdfs

     

  9. 切片策略

     

     小文件根据长度,不管多小,都会切成一块,很多切片,很多maptask!浪费,效率底下!

  10. 为什么combinetsxt inputformat可以减少切片?这是切片的本质决定的,切片并不是真的把文件分割了,而是逻辑上进入数据量的大小,所以当然可以逻辑上合并

     

     

  11. shuffle过程

     

     patitopn阶段为什么在shuffle,因为reduce取数据的过程在shuffle

     

  12. 分区

     

     

     

  13. 排序

     

     

     

  14. maptask 各个阶段详情
    1.   读入  默认是textinputformat  根据切片策略读入
    2. map阶段,一个个key键值对
    3. Collection阶段 输出到缓冲区
    4. 溢出 分区排序
    5. 合并  合并成最终一个大文件

       

       

       

       

    6. reducetask 
      1.   拷贝 将数据远程拷贝进不同的reduce分区里
      2. reduce排序
      3. 合并输出  由于已经在maptask部分排序过了,只需再排序一次

         

      4. 这是recude join过程

         

         

         

标签:map,shuffle,必看,面试,reduce,maptask,切片,24MapReduce,排序
From: https://www.cnblogs.com/lvshy/p/18092464

相关文章

  • 4/25虾皮面试准备 Hadoop疑难杂症
    namenode元信息   小文件  容量队列      HadoopHAzkfc究竟是什么监视器和https://www.cnblogs.com/yjt1993/p/9492102.html 没有secondnode了!高可用因为standby代替了      Hadoop调优细节   ......
  • 4.17思凡特面试
    hive语法重视hdfs调优怎么编写清洗怎么写支持压缩的map中间结果一些误区  datanode接受数据是一个块一个块往上传,后面两个节点是依次调用的元数据得在namenode内存中加载,而非仅存在磁盘上Fsimage保存目录和iNode,eidts记录更新操作两个并不是一致的,第一......
  • 3/5数仓面试必看
    压缩就用gzip 汇总数据  TSV 建表语句    全量表设计  null的格式不一样,虽然显示都为空 都用空字符显示增量表13张和业务无关的不用拿过来   ods数据装载脚本 i:4substring方法DIM表的数据源是ods层如果找不到不能从数......
  • Java核心面试知识集—Kafka面试题
    目录基础篇1、TCP、UDP的区别?2、TCP协议如何保证可靠传输?3、TCP的握手、挥手机制?4、TCP的粘包/拆包原因及其解决方法是什么?5、Netty的粘包/拆包是怎么处理的,有哪些实现?6、同步与异步、阻塞与非阻塞的区别?7、说说网络IO模型?8、BIO、NIO、AIO分别是什么?9、select、poll、epoll的机制......
  • java面试题
    面向对象的基本特征?分别什么含义封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。多态:多态性是指允许不同类的对象对同一消息作出响应。重载和重写的区别?重载:在......
  • Java核心面试知识集—设计模式
    设计模式知识点笔记汇总1.单例模式(SingletonPattern)2.工厂模式3.抽象工厂模式(AbstractFactoryPattern)4.模板方法模式(TemplateMethodPattern)5.建造者模式(BuilderPattern)6.代理模式(ProxyPattern)7.原型模式(PrototypePattern)8.中介者模式9.命令模式10.责任链模式11......
  • Java核心面试知识集—计算机网络基础
    计算机网络体系结构在计算机网络的基本概念中,分层次的体系结构是最基本的。计算机网络体系结构的抽象概念较多,在学习时要多思考。这些概念对后面的学习很有帮助。网络协议是什么?在计算机网络要做到有条不紊地交换数据,就必须遵守一些事先约定好的规则,比如交换数据的格式、是否需......
  • Java核心面试知识集—大厂数据库面试题
    事务四大特性(ACID)原子性、一致性、隔离性、持久性?原子性(Atomicity)原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。一致性(Consistency)事务开始前和结束后,数据库的完整性......
  • Java核心面试知识集—常见面试算法题
    排序比较排序冒泡排序重复地走访过要排序的数列,每次比较相邻两个元素,如果它们的顺序错误就把它们交换过来,越大的元素会经由交换慢慢“浮”到数列的尾端。publicvoidbubbleSort(int[]arr){inttemp=0;booleanswap;for(inti=arr.length-1;i>0;i......
  • Java核心面试知识集—zookeeper面试题
    1.ZooKeeper是什么?ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。客户端的读请求可......