使用Spark需要RDD编程,而RDD编程的第一步就是构建RDD
有两种方法创建RDD
(1)从文件系统中直接读入一个外部数据集, 一个简单的例子,比如
JavaRDD<String> input = sc.textFile("文件路径"); //文件路径的写法根据所使用的不同的文件系统有所变化
(2)从驱动器程序里分发对象集合。
有不少情况下,并不需要程序的每一步都使用RDD,或者要将一段已经写好的程序改成可以在Spark上运行的应用,这时就需要直接从驱动器程序里分发对象集合创建RDD。以利用List对象构建RDD为例,可以使用JavaSparkContext的parallelize方法.
要查看RDD内容有两种较为简单的办法
(1)写出到文件系统,即调用所使用的RDD的类中类似saveasTextFile()的方法,例如 对于JavaPairRDD的对象x可以用 x.saveasTextFile("输出文件路径"):
(2)还可将RDD转回List处理查看:有take()方法和collect()方法,但是collect方法会将整个RDD内容集中,如果数据集过大,在网络传输和内存占用上都可能造成压力,如果只是要查看RDD中的几个值还是take方法较为合适。