作家
登录

借hbase-rdd二次开发谈如何在Spark Core之上扩建自己的模块

作者: 来源: 2017-04-14 10:55:59 阅读 我要评论

  • implicit def toHBaseRDDSimpleTS[A](rdd: RDD[(String, Map[String, (A, Long)])])(implicit writer: Writes[A]): HBaseWriteRDDSimple[(A, Long)] =new HBaseWriteRDDSimple(rdd, pa[A]) 
  • 这两个办法在发明RDD膳绫腔有toHbase办法时会主动测验测验调用,大年夜隐式定义中测验测验找到解决筹划,测验测验之后发明有定义toHBaseRDDSimple隐式办法,于是调用该隐式办法新建HBaseWriteRDDSimple类,返回hBaseWriteRDDSimple,而在hBaseWriteRDDSimple对象中是有toHbase办法的,是以在惹人hbase-rdd之后,可以发明本来没有toHbase办法的RDD上有toHbase办法了。这一切都要归功于Scala强大年夜的隐式转换功能。

    那明白了道理,是否我们可以基于RDD写本身的模块,说干就干!

    1. traitHaha{ 
    2. implicitdef gaga[A](rdd: RDD[String]): Hehe= 
    3. newHehe(rdd) 

    第二步:新建Hehe类

    1. final  class Hehe(rdd:RDD[String]) { 
    2. def wow(tableName:String,family:String): Unit ={ 
    3. println("---------------------------------------------"
    4. println("tableName:"+tableName+" - family:"+family) 
    5. println("size:"+rdd.count()) 
    6. rdd.collect().foreach(data=http://developer.51cto.com/art/201704/>println(data))
    7. println("---------------------------------------------"
    8.    } 

    第三步:新建包对象

    1. package object test extends Haha 

    第四步:新建test类

    1. object Test{ 
    2. def main(args: Array[String]) { 
    3. valsparkConf = new SparkConf().setAppName("Test"
    4. valsc = new SparkContext(sparkConf) 
    5. sc.makeRDD(Seq("one","two","three","four")).wow("taskDataPre","T"
    6.   } 

    项目构造图:

    借hbase-rdd二次开辟谈如安在Spark Core之上扩建本身的模块

    借hbase-rdd二次开辟谈如安在Spark Core之上扩建本身的模块

    运行效不雅图:

    欲望对大年夜家今后的开辟有赞助,同时借鉴本案例,在Spark Core之上构建本身的小模块。

    51CTO学院 4.20 IT充电节

    晃荡链接:http://edu.51cto.com/activity/lists/id-47.html?wenzhang

    相干视频教程:

    第一步:新建Trait

    【大年夜数据 Spark2.x 流数据处理】精晓Spark流数据处理(持续完毕)

    【编辑推荐】

    1. Couchbase之情况搭建与基于Java的测试
    2. C#分布式缓存Couchbase应用
    3. 阿里肖冰:若何实现分钟级其余HBase宕机恢复
    4. HTC Vive VR行业应用负责人马杰思 :HTC Vive与房间级虚拟实际体验
    5. 一文读懂Hadoop、HBase、Hive、Spark分布式体系架构
    【义务编辑:51CTO_OS TEL:(010)68476606】

      推荐阅读

      深度学习概述:从感知机到深度网络

    近些年来,人工智能范畴又活泼起来,除了传统了学术圈外,Google、Microsoft、facebook等工业界优良企业也纷纷成立相干研究团队,并取得了很多令人注目标结不雅。这要归功于社交收集用户产>>>详细阅读


    本文标题:借hbase-rdd二次开发谈如何在Spark Core之上扩建自己的模块

    地址:http://www.17bianji.com/lsqh/34785.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)