使用程序中的集合创建RDD

蹲街弑〆低调 提交于 2019-12-02 05:05:16
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.Function2;

import java.util.Arrays;
import java.util.List;
  //通过并行化集合创建RDD
public class ParallelizeCollection {
    public static void main(String[] args) {     
       
        //创建Sparkconf
        SparkConf conf = new SparkConf()
                .setAppName("ParallelizeCollection")
                .setMaster("local");


        //创建javaSparkContent
        JavaSparkContext sc = new JavaSparkContext(conf);


        //要通过并行化集合方式创建RDD,那么就调用SparkContext以及其子类的parallelize()的方法
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
        JavaRDD<Integer> numberRDD = sc.parallelize(numbers);


        //执行reduce算子操作
        int sum = numberRDD.reduce(new Function2<Integer, Integer, Integer>() {
            @Override
            public Integer call(Integer num1, Integer num2) throws Exception {
                return num1 + num2;
            }
        });


        // 输出累加的和
        System.out.println("1到10累加的和:" + sum);

        //


    }
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!