查看: 180|回复: 4

Spark读写Hbase的二种方式对比

[复制链接]
论坛徽章:
36
树莓派
日期:2015-04-10 15:20:01python徽章
日期:2017-08-17 17:09:36python徽章
日期:2017-10-20 16:37:41区块链徽章
日期:2018-01-18 18:02:56金融徽章
日期:2018-03-01 16:43:15Hadoop研习者初级
日期:2018-03-29 16:08:43R研习者中级
日期:2018-04-26 15:27:36python徽章
日期:2018-06-21 17:15:38股票徽章
日期:2018-08-24 10:51:37计算徽章
日期:2018-09-21 16:51:47股票徽章
日期:2018-11-01 14:04:25股票徽章
日期:2019-01-10 14:04:57
发表于 2019-6-8 21:38 | 显示全部楼层 |阅读模式

tm HTML Spark HBase

回复

使用道具 举报

新浪微博达人勋 xenron  实名认证
论坛徽章:
251
股票徽章
日期:2019-09-12 14:42:59spark徽章
日期:2019-09-19 15:44:06人工智能徽章
日期:2019-09-19 15:47:00区块链徽章
日期:2019-09-19 15:47:29python徽章
日期:2019-09-19 15:47:56
发表于 2019-6-8 22:21 | 显示全部楼层
传统方式

这种方式就是常用的TableInputFormat和TableOutputFormat来读写hbase
回复 支持 反对

使用道具 举报

新浪微博达人勋 xenron  实名认证
论坛徽章:
251
股票徽章
日期:2019-09-12 14:42:59spark徽章
日期:2019-09-19 15:44:06人工智能徽章
日期:2019-09-19 15:47:00区块链徽章
日期:2019-09-19 15:47:29python徽章
日期:2019-09-19 15:47:56
发表于 2019-6-8 22:21 | 显示全部楼层
用sc.newAPIHadoopRDD根据conf中配置好的scan来从Hbase的数据列族中读取包含(ImmutableBytesWritable, Result)的RDD,

随后取出rowkey和value的键值对儿利用StatCounter进行一些较大最小值的计算最终写入hbase的统计列族.
回复 支持 反对

使用道具 举报

新浪微博达人勋 xenron  实名认证
论坛徽章:
251
股票徽章
日期:2019-09-12 14:42:59spark徽章
日期:2019-09-19 15:44:06人工智能徽章
日期:2019-09-19 15:47:00区块链徽章
日期:2019-09-19 15:47:29python徽章
日期:2019-09-19 15:47:56
发表于 2019-6-8 22:21 | 显示全部楼层
SparkOnHbase方式

重点介绍第二种方式,这种方式其实是利用Cloudera-labs开源的一个HbaseContext的工具类来支持spark用RDD的方式批量读写hbase
回复 支持 反对

使用道具 举报

新浪微博达人勋 xenron  实名认证
论坛徽章:
251
股票徽章
日期:2019-09-12 14:42:59spark徽章
日期:2019-09-19 15:44:06人工智能徽章
日期:2019-09-19 15:47:00区块链徽章
日期:2019-09-19 15:47:29python徽章
日期:2019-09-19 15:47:56
发表于 2019-6-8 22:21 | 显示全部楼层
HbaseContext还有其他bulkGet,bulkPut,bulkDelete等,都是可以直接将hbase的操作转换成RDD,只要转成RDD了,那么rdd的这么多transform和action就可以玩的很happy了.

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

 

GMT+8, 2019-9-20 20:40 , Processed in 0.159701 second(s), 37 queries .

关闭

扫一扫加入
本版微信群