前言
spark怎么知道读取的是本地文件还是hdfs的文件呢?
前面写过一篇博客【spark2的textFile()是怎么实例化各个不同的fs(FileSystem)】,主要是指【本地文件系统】和【hadoop文件系统】,我们看到源码里最后是根据文件路径url的scheme来判断的:
file: LocalFileSystem
hdfs: DistributeFileSystem
1、获取blockSize
1、直接从InputSplit[] getSplits(JobConf job, int numSplits)说起
2、因为前部分是跟读取本地文件是一样的,所以不重复写了,具体可参考博客内 【spark读取 本地/可分割/单个 的文件时是如何划分分区】
1.1、集群blockSzie=256M,hdfs文件blockSize=256M:



最低0.47元/天 解锁文章
1024

被折叠的 条评论
为什么被折叠?



