亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

park將數據寫入hbase以及從hbase讀取數據

2019-11-11 05:09:13
字體:
來源:轉載
供稿:網友

本文將介紹

1、Spark如何利用saveAsHadoopDataset和saveAsNewAPIHadoopDataset將RDD寫入Hbase

2、spark從hbase中讀取數據并轉化為RDD

操作方式為在eclipse本地運行spark連接到遠程的hbase。

java版本:1.7.0

Scala版本:2.10.4

zookeeper版本:3.4.5(禁用了hbase自帶zookeeper,選擇自己部署的)

Hadoop版本:2.4.1

spark版本:1.6.1

hbase版本:1.2.3

集群:centos6.5_x64

將RDD寫入hbase

注意點:

依賴:

將lib目錄下的hadoop開頭jar包、hbase開頭jar包添加至classpath

此外還有lib目錄下的:zookeeper-3.4.6.jar、metrics-core-2.2.0.jar(缺少會提示hbase RpcRetryingCaller: Call exception不斷嘗試重連hbase,不報錯)、htrace-core-3.1.0-incubating.jar、guava-12.0.1.jar

$SPARK_HOME/lib目錄下的 spark-assembly-1.6.1-hadoop2.4.0.jar

不同的package中可能會有相同名稱的類,不要導錯

連接集群:

spark應用需要連接到zookeeper集群,然后借助zookeeper訪問hbase。一般可以通過兩種方式連接到zookeeper:

第一種是將hbase-site.xml文件加入classpath

第二種是在HBaseConfiguration實例中設置

如果不設置,默認連接的是localhost:2181會報錯:connection refused 

本文使用的是第二種方式。

hbase創建表:

雖然可以在spark應用中創建hbase表,但是不建議這樣做,最好在hbase shell中創建表,spark寫或讀數據

使用saveAsHadoopDataset寫入數據

package com.test    import org.apache.hadoop.hbase.HBaseConfiguration  import org.apache.hadoop.hbase.client.Put  import org.apache.hadoop.hbase.io.ImmutableBytesWritable  import org.apache.hadoop.hbase.ma從hbase讀取數據轉化成RDD

本例基于官方提供的例子

package com.test    import org.apache.hadoop.hbase.{HBaseConfiguration, HTableDescriptor, TableName}  import org.apache.hadoop.hbase.client.HBaseAdmin  import org.apache.hadoop.hbase.mapreduce.TableInputFormat  import org.apache.spark._  import org.apache.hadoop.hbase.client.HTable  import org.apache.hadoop.hbase.client.Put  import org.apache.hadoop.hbase.util.Bytes  import org.apache.hadoop.hbase.io.ImmutableBytesWritable  import org.apache.hadoop.hbase.mapreduce.TableOutputFormat  import org.apache.hadoop.mapred.JobConf  import org.apache.hadoop.io._    object TestHBase2 {      def main(args: Array[String]): Unit = {      val sparkConf = new SparkConf().setAppName("HBaseTest").setMaster("local")      val sc = new SparkContext(sparkConf)            val tablename = "account"      val conf = HBaseConfiguration.create()      //設置zooKeeper集群地址,也可以通過將hbase-site.xml導入classpath,但是建議在程序里這樣設置      conf.set("hbase.zookeeper.quorum","slave1,slave2,slave3")      //設置zookeeper連接端口,默認2181      conf.set("hbase.zookeeper.property.clientPort", "2181")      conf.set(TableInputFormat.INPUT_TABLE, tablename)        // 如果表不存在則創建表      val admin = new HBaseAdmin(conf)      if (!admin.isTableAvailable(tablename)) {        val tableDesc = new HTableDescriptor(TableName.valueOf(tablename))        admin.createTable(tableDesc)      }        //讀取數據并轉化成rdd      val hBaseRDD = sc.newAPIHadoopRDD(conf, classOf[TableInputFormat],        classOf[org.apache.hadoop.hbase.io.ImmutableBytesWritable],        classOf[org.apache.hadoop.hbase.client.Result])        val count = hBaseRDD.count()      println(count)      hBaseRDD.foreach{case (_,result) =>{        //獲取行鍵        val key = Bytes.toString(result.getRow)        //通過列族和列名獲取列        val name = Bytes.toString(result.getValue("cf".getBytes,"name".getBytes))        val age = Bytes.toInt(result.getValue("cf".getBytes,"age".getBytes))        println("Row key:"+key+" Name:"+name+" Age:"+age)      }}        sc.stop()      admin.close()    }  } 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美香蕉大胸在线视频观看| 在线播放精品一区二区三区| 日本高清不卡的在线| 国产精品久久综合av爱欲tv| 中文字幕日韩在线观看| 日本免费在线精品| 久久国产精品久久国产精品| 91在线免费视频| 久久在线免费视频| 国产精品成人av在线| www.99久久热国产日韩欧美.com| 成人黄色在线观看| 不卡av在线播放| 亚洲欧美日韩综合| 色悠悠久久88| 久久久精品久久| 欧美亚洲午夜视频在线观看| 国产精品视频自在线| 亚洲毛片在线免费观看| 久热爱精品视频线路一| 国产午夜精品理论片a级探花| 久久精品国产亚洲精品2020| 麻豆成人在线看| 欧美国产在线视频| 最近中文字幕2019免费| www.久久草.com| 2019中文在线观看| 美日韩丰满少妇在线观看| 久久国产精品首页| 国产成人高清激情视频在线观看| 美日韩丰满少妇在线观看| 久久久久久久久网站| 91久久久国产精品| 久久偷看各类女兵18女厕嘘嘘| 久久久久久久爱| 精品动漫一区二区三区| 精品在线观看国产| 国产在线拍偷自揄拍精品| 国产伦精品免费视频| 狠狠色狠狠色综合日日五| 亚洲性夜色噜噜噜7777| 国产精品91在线| 黑人精品xxx一区一二区| 国产一区二区三区在线观看网站| 亚洲国产精久久久久久久| 91豆花精品一区| 国产精品免费久久久久影院| 色综合久久天天综线观看| 国产视频亚洲视频| 久久精品99久久久香蕉| 欧美亚洲激情视频| 成人中文字幕+乱码+中文字幕| 国产精品国产三级国产aⅴ浪潮| 久久综合久中文字幕青草| 久久6免费高清热精品| 国产视频在线一区二区| 国产日本欧美一区二区三区在线| 亚洲一区二区三区四区视频| 日韩精品中文字幕久久臀| 91精品国产成人| 午夜剧场成人观在线视频免费观看| 日韩精品免费电影| 中文字幕av一区| 欧美激情国产日韩精品一区18| 91精品视频在线| 最新国产成人av网站网址麻豆| 亚洲最新视频在线| 欧美一级bbbbb性bbbb喷潮片| 久久久国产影院| 成人黄色激情网| 亚洲天堂色网站| 4438全国亚洲精品在线观看视频| 国内精品久久久| 亚洲成人免费网站| 成人av色在线观看| 成人精品久久一区二区三区| 成人激情视频在线| 欧美一区二区大胆人体摄影专业网站| 色婷婷久久av| 久久久国产影院| 欧美日韩激情视频8区| 91久久精品国产91久久| 亚洲一区中文字幕| 欧美另类在线播放| 国产黑人绿帽在线第一区| 久久久亚洲天堂| 久久av.com| 日韩一区av在线| 青青草国产精品一区二区| 国产精品福利久久久| 日本午夜精品理论片a级appf发布| 国产婷婷成人久久av免费高清| 国产免费久久av| 538国产精品一区二区免费视频| 一区二区三区黄色| 亚洲欧美www| 国产欧美精品一区二区三区-老狼| 欧美性猛交xxxx免费看久久久| 国产日本欧美一区二区三区| 国产精品第一页在线| 91影院在线免费观看视频| 81精品国产乱码久久久久久| 亚洲欧美日韩在线高清直播| 久久大大胆人体| 日韩精品免费综合视频在线播放| 欧美视频一二三| 91po在线观看91精品国产性色| 精品伊人久久97| 国产精品久久999| 日韩中文字幕网址| 欧美日韩999| 中文字幕亚洲一区二区三区| 久久成人精品一区二区三区| 91精品视频在线看| 成人黄色影片在线| 国产在线精品成人一区二区三区| 粗暴蹂躏中文一区二区三区| 狠狠躁18三区二区一区| 日韩av男人的天堂| 国产成人精品久久亚洲高清不卡| 久久理论片午夜琪琪电影网| 欧美午夜影院在线视频| 色综合久久久888| 欧美高清不卡在线| 美女视频黄免费的亚洲男人天堂| 国产精品h在线观看| 欧美日韩国产在线播放| 91免费国产网站| 国内精品小视频| 欧美在线观看一区二区三区| 久久精品一区中文字幕| 欧美视频不卡中文| 亚洲色在线视频| 青青草原成人在线视频| 久久免费在线观看| 色综合久综合久久综合久鬼88| 国产欧美精品一区二区三区-老狼| 国产一区二区久久精品| www.欧美精品一二三区| 日韩精品在线观| 亚洲成av人乱码色午夜| 91视频-88av| 国产精品美乳在线观看| 成人久久久久爱| 奇米影视亚洲狠狠色| 欧美日韩国产第一页| 精品视频在线播放免| 亚洲国产精久久久久久| 亚洲黄色在线看| 亚洲国产精品va在线观看黑人| 久久久久久97| 亚洲精品综合久久中文字幕| 狠狠躁天天躁日日躁欧美| 国产精品精品视频| 日韩精品一区二区三区第95| 亚洲wwwav| 色偷偷av一区二区三区| 国产精品吹潮在线观看| 久久久精品在线| 国产精品18久久久久久首页狼| 日韩在线观看av| 日韩av大片在线| 久久久999精品视频| 亚洲精品美女视频|