zoukankan      html  css  js  c++  java
  • Mapreduce学习之路二

    MR数据切片和MapTask并行度的决定机制:

      -问题:MapTask的并行度决定了Map阶段的任务处理并发度,进而影响到整个Job的处理速度

      ~MapTask的并行度机制:

        ·数据块:Block,HDFS上的物理切分后的块,Hadoop1.x版本默认大小64M,2.x默认大小为128M

          ·数据切片:逻辑上对数据进行分片,并不会在磁盘上将其分片进行存储

      ~MapTask的数量 由 客户端提交Job时,切片数量决定

      ~一个切片对应一个MapTask并行实例处理

      ~切片时不考虑数据集整体,逐个针对每个文件进行单独切片

        -切片机制

          -按照文件内容长度进行切片

            -切片大小默认为Block的大小

        -在源码中计算切片的大小的公式:    

            Math.max( minSize , Math.min ( maxSzie , blockSize ))

              minSize = 1

              maxSize = Long.MaxValue

              切片大小 = blockSize

         -切片大小的设置

          maxSize( 切片最大值 ) : 参数如果调的比blockSize小,则会让切片变小,就等于配置的参数值

            minSize( 切片最小值 ) : 参数调的比blockSize大

        -获取切片信息的API

          String name = inputSplit.getPath().getName(); // 获取切片文件的名称

             FileSplit inputSplit = (FileSplit) context.getInputSplit(); // 根据文件类型获取切片信息

  • 相关阅读:
    CentOS 8搭建Kubernetes-k8s集群-1.18.5
    Docker、CICD持续集成部署、Gitlab使用、Jenkins介绍
    落地微服务架构v2.0
    分布式大规模服务调用架构
    .NetCore3.1+微服务架构技术栈
    ASP.NET MVC4 学习笔记-4
    ASP.NET MVC4 学习笔记-3
    SQL Server中获取不同格式的日期
    ASP.NET MVC4 学习笔记-2
    windows ce 5.0 + vs2005 + sql数据库_开发注意事项
  • 原文地址:https://www.cnblogs.com/joey-413/p/13997802.html
Copyright © 2011-2022 走看看