5、跟mapred.TextInputFormat 里的Split划分相干的参数
- mapreduce.input.fileinputformat.split.minsize : 决定了计算Split划分时的minSize
- mapreduce.job.maps 或 mapred.map.tasks : 决定了getSplits(JobConf job, int numSplits)办法里的numSplits,大年夜而可以影响goalSize的大年夜小
- dfs.block.size 或 fs.local.block.size : 决定了HDFS的BlockSize
6、MapReduce新版API里的 org.apache.hadoop.mapreduce.lib.input.TextInputFormat,它的SplitSize与膳绫擎说到的计算方法不一样,getSplits办法的签名为 getSplits(JobContext job),不再有numSplilts这个参数,splitSize的计算规矩改为 Math.max(minSize, Math.min(maxSize, blockSize)),minSize和blockSize跟之前一样,新的maxSize为conf.getLong("mapreduce.input.fileinputformat.split.maxsize", Long.MAX_VALUE)
7、在Spark2.0.0里,设置Hadoop相干的参数(比如mapreduce开首的)要经由过程 spark.sparkContext.hadoopConfiguration 来设置
- val rdd = new HadoopRDD(
- sparkSession.sparkContext,
- _broadcastedHadoopConf.asInstanceOf[Broadcast[SerializableConfiguration]],
- Some(initializeJobConfFunc),
- inputFormatClass,
- classOf[Writable],
- classOf[Writable],
- _minSplitsPerRDD)
【编辑推荐】
- 大年夜数据前景分析:Hadoop将被Spark替代?
- 手把手教你Spark机能调优
- 深度解析:Spark优于Hadoop吗?
- 大年夜数据架构师必看:常见的七种Hadoop和Spark项目案例
- 什么是Apache Spark?数据分析平台如是说
推荐阅读
【限时免费】岁尾最强一次云计算大年夜会,看传统、社区、互联网企业若何碰撞? 之后是7nm的Navi(仙后座),再之后是基于7nm+改进版的下下代架构。据ComputerBase报道,代号GFX10的芯片近>>>详细阅读
本文标题:从源码看Spark读取Hive表数据小文件和分块的问题
地址:http://www.17bianji.com/lsqh/40042.html
1/2 1