• [微笑]这篇写得不错,没有逻辑上的问题!不过咱估计不会讨小萌们喜欢。 2019-07-16
  • 陈华德的专栏作者中国国家地理网 2019-07-16
  • 西藏迎来首家民营文化企业援藏团队 2019-07-14
  • “精日亲美的真正原因”是中国的伪公知精英身上长了“洋奴依附之心”,“崇洋媚外之骨”,“汉奸文化之瘤”,这些人利用“和谐、包容”疯狂推行汉奸文化洗脑国人! 2019-07-10
  • 合肥市公立医疗机构1271种医疗服务价格公示 部分服务涨价 2019-07-10
  • 文昌至临高高速公路有望年内开工 建成后车程缩至1小时内 2019-07-02
  • 加入我们中国国家地理网 2019-06-27
  • 强势发力体育营销 世界杯中国企业改变“旁观”窘状 2019-06-25
  • “道德瘾君子”侮辱了杨女士的善良 2019-06-25
  • 郑永年:争名逐利抢流量,中国的知识分子怎么了? 2019-06-21
  • 十九大代表拉措:团结一心跟党走   2019-06-18
  • 美钢铝关税政策引发各界忧虑 2019-06-18
  • 党的十九大最重大的理论成就 2019-06-15
  • 经济日报多媒体数字报刊 2019-06-15
  • 西安外事学院在省茶艺大赛中创多项佳绩西安外事学院-陕西教育新闻 2019-06-14
  • 欢迎来到魔据教育大数据学院,专注大数据工程师培养!
    当前位置:两肖两码中特资料网 > 学习资料 > 讲师博文 > Spark javardd入门

    免费精准一肖两码中特: Spark javardd入门

    时间:2017-08-17 17:55:48作者:[!--zuozhe--]

    两肖两码中特资料网 www.mqptd.tw 9-1.png

     

    Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。SPARK不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
     
    Spark 是在 Scala 语言中实现的,但提供scala、java、python、hivesql等语音开发接口。并且Spark 提供了大量的库,包括SQL、DataFrames、MLlib、GraphX、Spark Streaming。
     
    Spark建立在统一抽象的RDD(Resilient Distributed Datasets)之上。RDD是弹性分布式数据集,即分布式的元素集合。在spark中,对所有数据的操作都是创建RDD、转化已有的RDD以及调用RDD操作进行求值。在这一切的背后,Spark会自动将RDD中的数据分发到集群中,并将操作并行化。用java实现的rdd称为javardd,本文主要为大家介绍用java实现的spark程序javardd。
     
    使用javardd的好处,对应经常使用java的人员学习成本较低上手spark较快。劣势,没有scala编写简洁。
     
    以下是javardd常用的几个方法:
    1、map(func):对每行数据使用func,然后返回一个新的RDD,数据处理-每行。
    2、filter(func):对每行数据使用func,然后返回func后为true的数据,用于过滤。
    3、flatMap(func):和map差不多,但是flatMap生成的是多个结果,用于行转列。
    4、groupByKey(numTasks):返回(K,Seq[V]),也就是Hadoop中reduce函数接受的
    key-valuelist
    5、reduceByKey(func,[numTasks]):就是用一个给定的reduce func再作用在groupByKey产
    生的(K,Seq[V]),比如求和,求平均数
    6、sortByKey([ascending],[numTasks]):按照key来进行排序,是升序还是降序,ascending
    是boolean类型
     
    接下来为大家以代码案例的形式介绍每个方法的用法,spark分为转换因子和执行因子,转换因子为对javardd进行数据格式转换。执行因子为确定数据执行方式。Spark为懒惰式,如果没有执行因子程序是不执行的。
     
    代码案例-转换因子
     

    9-2.png

    首先加载数据,加载hdfs数据
    JavaRDD<String> baseLines = ctx.textFile(“hdfs:///dx/basic”);
    1) Map,用例为数据加上日期标识
    JavaRDD<String> filedata = baseLines.map(new Function<String, String>() {
    @Override
    public String call(String s) {
    s = s + “|20170101”;
    return s;
    }
    });
    2) Filter,用例提取包含jpg的图片地址
    JavaRDD<String> fileclear = baseLines.filter(new Function<String, Boolean>() {
    @Override
    public Boolean call(String s) {
    if (s.indexOf(“.jpg”)>=0) {
    return true;
    }
    return false;
    }
    });
    3) flatMap,行转列
    JavaRDD<String> words = baseLines.flatMap(new FlatMapFunction<String, String>() {
    @Override
    public Iterator<String> call(String s) {
    return Arrays.asList(SPACE.split(s)).iterator();
    }
    });
    元数据格式
    1 2 3 4 5
    转换后格式
    1
    2
    3
    4
    5
    4) groupByKey
    将数据进行按key分组
    JavaPairRDD<String, String> userpropv = baseLines
    .mapToPair(new PairFunction<String, String, String>() {
    @Override
    public Tuple2<String, String> call(String s) throws Exception {
    String[] str = s.split(“,”);
    //产品id+用户号码作为key
    return new Tuple2<>(str[2], "1");
    }
    });
     
    JavaPairRDD<String, Iterable<String>> dxgroupedPairs = userpropv.groupByKey();

    9-3.png

    5) reduceByKey
    作用于groupByKey产生的value上比如求和求平均值。
    JavaPairRDD<String, Integer> counts =
    userpropv.reduceByKey(new Function2<Integer, Integer, Integer>() {
    @Override
    public Integer call(Integer i1, Integer i2) {
        return i1 + i2;
      }
    });
    6) sortByKey,第二个参数true升序、false降序
    JavaRDD< String > resultRDD = baseLines.sortBy(
    new Function<String, Object>() {
    @Override
    public Object call(String v1) throws Exception {
    return v1;
    }
    }, false, 1);
     
    代码案例-执行因子
    1、saveAsTextFile 数据保存
    resultRDD..saveAsTextFile(“/outpath”)
    2、collect()小结果集数组转换
       List<String> list = resultRDD. collect();
     
    以上是spark javardd常用因子,在一般程序中较为常用的。
     
    参考地址://spark.apache.org/docs/latest/api/java/index.html

    更多大数据相关资讯敬请关注魔据教育,为您分享最及时的大数据资讯。
    学习大数据敬请关注魔据教育微信二维码。
    魔据教育微信二维码

    【版权与免责声明】如发现内容存在版权问题,烦请提供相关信息发邮件至[email protected],我们将及时沟通与处理。本站内容除非来源注明魔据教育,否则均为网友转载,涉及言论、版权与本站无关。

    全国咨询热线:18501996998,值班手机:18501996998(7*24小时)

    在线咨询:张老师QQ 320169340

    企业合作服务专线:010-82340234-821, 院校合作洽谈专线:010-82340234

    Copyright 2001-2019 魔据教育 - 北京华育兴业科技有限公司 版权所有,京ICP备17018991号-2

    免费在线咨询两肖两码中特资料网

    免费索取技术资料立即索取

    大数据技术交流QQ:226594285

    电话咨询010-82340234

  • [微笑]这篇写得不错,没有逻辑上的问题!不过咱估计不会讨小萌们喜欢。 2019-07-16
  • 陈华德的专栏作者中国国家地理网 2019-07-16
  • 西藏迎来首家民营文化企业援藏团队 2019-07-14
  • “精日亲美的真正原因”是中国的伪公知精英身上长了“洋奴依附之心”,“崇洋媚外之骨”,“汉奸文化之瘤”,这些人利用“和谐、包容”疯狂推行汉奸文化洗脑国人! 2019-07-10
  • 合肥市公立医疗机构1271种医疗服务价格公示 部分服务涨价 2019-07-10
  • 文昌至临高高速公路有望年内开工 建成后车程缩至1小时内 2019-07-02
  • 加入我们中国国家地理网 2019-06-27
  • 强势发力体育营销 世界杯中国企业改变“旁观”窘状 2019-06-25
  • “道德瘾君子”侮辱了杨女士的善良 2019-06-25
  • 郑永年:争名逐利抢流量,中国的知识分子怎么了? 2019-06-21
  • 十九大代表拉措:团结一心跟党走   2019-06-18
  • 美钢铝关税政策引发各界忧虑 2019-06-18
  • 党的十九大最重大的理论成就 2019-06-15
  • 经济日报多媒体数字报刊 2019-06-15
  • 西安外事学院在省茶艺大赛中创多项佳绩西安外事学院-陕西教育新闻 2019-06-14
  • 广西快乐双彩走势图表 阿尔艾因全脂无糖骆驼奶粉 现金嘉年华APP下载 河北麻将单机版下载 街机电玩捕鱼版 埃瓦尔股东证书 新疆喜乐彩玩法 急冻钻石?官网 浙江快乐彩12选5中奖 猎鱼达人3d官网