6.3

RDD
硬盘提取

public class Spark03_RDD_Disk {
    public static void main(String[] args) {

        final SparkConf conf = new SparkConf();
        conf.setMaster("local");
        conf.setAppName("spark");
        final JavaSparkContext jsc = new JavaSparkContext(conf);

        // TODO 创建RDD数据处理模型
        //  利用环境对象对接磁盘数据源,构建RDD对象

        //textFile 方法可以传递一个参数:文件路径
        final JavaRDD<String> rdd = jsc.textFile("D:\\IDEA 2023.2.2\\xiangmu\\spark\\big-data\\data\\text.txt");

        final List<String> collect = rdd.collect();
        collect.forEach(System.out::println);
        jsc.close();
    }
}

内存

public class Spark02_RDD_Memory_Partition {
    public static void main(String[] args) {

        final SparkConf conf = new SparkConf();
        conf.setMaster("local");
        conf.setAppName("spark");
        final JavaSparkContext jsc = new JavaSparkContext(conf);

        //TODO  kafka 可以将数据进行切片(减小规模),也称之为分区,这个分区操作时底层完成的。
        //  local环境中,分区数量和环境核数量相关,但是一般不推荐
        //  分区数量需要手动设定
        final List<String> names = Arrays.asList("zhangsan", "lisi", "wangwu");
        //TODO parallelize方法可以传递两个参数
        //  第一个参数 对接的数据源集合
        //  第二个参数 切片(分区)数量
        final JavaRDD<String> rdd = jsc.parallelize(names,3);
        //TODO 将数据模型分区后的数据保存到磁盘文件中
        //  saveAsTextFile方法可以传递一个参数,表示输出的文件路径,路径可以为绝对路径 也可以为相对路径
        //  IDEA 中默认的相对路径以项目的根路径为准
        rdd.saveAsTextFile("output1");
        jsc.close();
    }
}
posted @ 2024-06-03 23:43  258333  阅读(4)  评论(0编辑  收藏  举报