RDD的创建大多数情况下是从hdfs文本来的,当然也可以从其他组件接入进来,如kafka、hbase等,后续介绍
创建类型:
val hdfs = sc.textFile("hdfs://master:9000/entry/201707/*")
val localFile = sc.textFile("/usr/log/applog/entry*")
val parallel= sc.parallelize(1 to 20 ,2)
val maked = sc.makeRDD(1 to 20 3)
1、文本类型
没有指定分区个数的,如果是hdfs则和文本的block数一致,且分布也是一致的,如果不是hdfs则分区个数为当前机器的cpu个数。
2、并行创建类型
上面的parallelize和makeRDD方法创建的RDD,是以spark的woker个数为分区个数,因为执行这个集合函数是以分区方式执行的,所以会和worker的个数一致。