zoukankan      html  css  js  c++  java
  • java实现spark常用算子之SortByKey



    import org.apache.spark.SparkConf;
    import org.apache.spark.api.java.JavaPairRDD;
    import org.apache.spark.api.java.JavaSparkContext;
    import org.apache.spark.api.java.function.Function2;
    import org.apache.spark.api.java.function.VoidFunction;
    import scala.Tuple2;

    import java.util.Arrays;
    import java.util.List;

    /**
    * sortbykey([ascending],[numTasks]) 算子:
    * 根据key进行排序操作
    * 第一个参数为true,则为升序,反之为降序
    * 第二个参数决定执行的task数目
    *
    */
    public class SortByKeyOperator {
    public static void main(String[] args){
    SparkConf conf = new SparkConf().setMaster("local").setAppName("sortByKey");
    JavaSparkContext sc = new JavaSparkContext(conf);

    List<Tuple2<String,Integer>> list = Arrays.asList(
    new Tuple2<String,Integer>("w1",1),
    new Tuple2<String,Integer>("w2",2),
    new Tuple2<String,Integer>("w3",3),
    new Tuple2<String,Integer>("w2",22),
    new Tuple2<String,Integer>("w1",11)
    );

    JavaPairRDD<String,Integer> pairRdd = sc.parallelizePairs(list);

    JavaPairRDD<String,Integer> result = pairRdd.sortByKey(true,2);

    result.foreach(new VoidFunction<Tuple2<String, Integer>>() {
    @Override
    public void call(Tuple2<String, Integer> stringIntegerTuple2) throws Exception {
    System.err.println(stringIntegerTuple2._1+":"+stringIntegerTuple2._2);
    }
    });

    }
    }

    微信扫描下图二维码加入博主知识星球,获取更多大数据、人工智能、算法等免费学习资料哦!

  • 相关阅读:
    计算机学习的网站、常用软件
    c语言标识符
    Git报错
    福尔摩斯的约会
    怎样判断一个单链表是否有环?
    中成药的合理使用--风寒感冒
    使用vscode打造python开发环境
    AIDA64 Extreme 6.10.5200 序列号
    VMware Workstation Pro 15密钥及下载地址
    centos 一键安装 Aria2 &管理脚本
  • 原文地址:https://www.cnblogs.com/guokai870510826/p/11635218.html
Copyright © 2011-2022 走看看