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.Function;
import java.util.Arrays;
import java.util.List;
/**
* map(function) 算子
* 通过function函数将RDD中的每一个元素转换为另一个新的元素,并返回一个新的RDD
*/
public class MapDemo {
public static void main(String[] args) {
SparkConf conf = new SparkConf().setMaster("local").setAppName("spark");
JavaSparkContext sc = new JavaSparkContext(conf);
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6);
JavaRDD<Integer> javaRDD = sc.parallelize(list);
//map的通用形式
JavaRDD<Integer> javaRDD1 = javaRDD.map(new Function<Integer, Integer>() {
@Override
public Integer call(Integer integer) throws Exception {
return integer + integer;
}
});
System.out.println(javaRDD1.collect());
//lambda表达式形式
JavaRDD<Integer> javaRDD2 = javaRDD.map(integer -> integer * integer);
System.out.println(javaRDD2.collect());
}
}
Java Spark算子:map
最新推荐文章于 2022-07-25 22:51:56 发布