首页 > 编程语言 > 详细

python 简单访问hbase

时间:2020-01-13 16:29:47      阅读:139      评论:0      收藏:0      [点我收藏+]

基于pyspark 读取和存储数据

--------------------------------读数据-------------------------------------------------------

from pyspark.sql import SparkSession

import os

os.environ[‘PYSPARK_PYTHON‘]=‘/opt/anaconda2/bin/python‘

sc = SparkSession.builder.master("local").appName("hbase").getOrCreate()

host = ‘localhost‘
table = ‘student‘
conf = {"hbase.zookeeper.quorum": host, "hbase.mapreduce.inputtable": table}
keyConv = "org.apache.spark.examples.pythonconverters.ImmutableBytesWritableToStringConverter"
valueConv = "org.apache.spark.examples.pythonconverters.HBaseResultToStringConverter"
hbase_rdd = sc.sparkContext.newAPIHadoopRDD("org.apache.hadoop.hbase.mapreduce.TableInputFormat","org.apache.hadoop.hbase.io.ImmutableBytesWritable","org.apache.hadoop.hbase.client.Result",keyConverter=keyConv,valueConverter=valueConv,conf=conf)

count = hbase_rdd.count()
print(count)
hbase_rdd.cache()
output = hbase_rdd.collect()
for (k, v) in output:
  print (k, v)

 

-----------------------存数据--------------------------------------

from pyspark import SparkContext
import os
os.environ[‘PYSPARK_PYTHON‘]=‘/opt/anaconda2/bin/python‘

#sc = SparkSession.builder.master("local").appName("hbase1").getOrCreate()
sc = SparkContext(‘local‘,‘hbase2‘)
host = ‘localhost‘
table = ‘demo1‘
keyConv = "org.apache.spark.examples.pythonconverters.StringToImmutableBytesWritableConverter"
valueConv = "org.apache.spark.examples.pythonconverters.StringListToPutConverter"
conf = {"hbase.zookeeper.quorum": host,"hbase.mapred.outputtable": table,"mapreduce.outputformat.class": "org.apache.hadoop.hbase.mapreduce.TableOutputFormat","mapreduce.job.output.key.class": "org.apache.hadoop.hbase.io.ImmutableBytesWritable","mapreduce.job.output.value.class": "org.apache.hadoop.io.Writable"}
rawData = [‘3,info,name,Rongcheng‘,‘3,info,age,22‘,‘3,info,sex,male‘]
sc.parallelize(rawData).map(lambda x: (x[0],x.split(‘,‘))).saveAsNewAPIHadoopDataset(conf=conf,keyConverter=keyConv,valueConverter=valueConv)

python 简单访问hbase

原文:https://www.cnblogs.com/xiennnnn/p/12187718.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!