## RDD并行度和分区
1. 能够并行计算的任务数量,我们称之为并行度。例如只有一个executor-cores,那并行计算的任务就只有一个
2. 分区是能够并行计算的最大的并行度
## 1.分区个数生成规则
### 1.textFile 文件数据源
1.分区相关参数定义
val rdd=sc.textFile(path="xxxx",用户指定的分区)<br>
如果没有用户指定的分区,则用defaultMinPartitions<br>
defaultMinPartitions: Int = math.min(defaultParallelism, 2)<br>
defaultParallelism= scheduler.conf.getInt("spark.default.parallelism", totalCores)<br>
2. **分区数据计算方式**<br>
使用了HadoopFile.spark读取文件底层是hadoop的方式<br>
totalSize 代表该文件的大小<br>
gogalSize= totalSize/并行度=M(byte)<br>
M代表每个分区的字节。 <br>
3. **1.1概念** <br>
在hadoop划分分区时,如果余下的分区长度大于M数量的10%就放在新分区,如果小于10%就放在老的分区
### 2.makeRDD 并行度
1. spark.makrRDD在没有设置分区的时候下,在默认情况下