利用Python調(diào)用HBASE-創(chuàng)新互聯(lián)

利用Python調(diào)用HBASE的 需要安裝thrift hbase-thrift

專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站制作服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)珠暉免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。

啟動hbase的thrift服務(wù):bin/hbase-daemon.sh start thrift 默認端口是9090

mysql 到hbase的數(shù)據(jù)同步:

1、put

2、Importtsv

3、編寫MapReduce Job導(dǎo)入

4、sqoop

簡單code:

#!/usr/bin/env python

#coding=utf-8

import sys

sys.path.append('/usr/lib/python2.6/site-packages/hbase')

from thrift import Thrift

from thrift.transport import TSocket

from thrift.transport import TTransport

from thrift.protocol import TBinaryProtocol

from hbase import Hbase

from hbase.ttypes import *

import csv

from hbase.ttypes import ColumnDescriptor, Mutation, BatchMutation, TRegionInfo

from hbase.ttypes import IOError, AlreadyExists

######

def client_conn():

transport=TSocket.TSocket("172.16.10.87",9090)

transport=TTransport.TBufferedTransport(transport)

protocol=TBinaryProtocol.TBinaryProtocol(transport)

client=Hbase.Client(protocol)

transport.open()

return client

def __del__():

transport.close()

if __name__=="__main__":

client=client_conn()

#獲取表名字

print client.getTableNames()

##創(chuàng)建表

#client.createTable('name2',[ColumnDescriptor(name="user_id:",maxVersions=1),ColumnDescriptor(name="user_name"),])

#寫入數(shù)據(jù)

client.mutateRow('name2','a1',[Mutation(column='user_id:1',value="1")])

client.mutateRow('ca_record','1',[Mutation(column='user_id:0',value='5')])

##獲取數(shù)據(jù)

aa=client.getRow('name2','a1')

for r in aa:

  print 'row',r.row

  print '\br'

  print 'value',r.columns.get("user_id:1").value

##刪除表

#client.disableTable("t1")

#client.deleteTable("t1")

print client.getTableNames()

###獲取表的行鍵值

#print client.scannerGet(client.scannerOpen('t2',"cmd",["a"]))

print client.scannerGet(client.scannerOpen('t2',"",["a"])) #當(dāng)row key為空取第一個

print "------"

print client.getColumnDescriptors('t3')

#在自己開發(fā)環(huán)境  只要安裝好thrift 及hbase-thrift的包,在import的時候不會出問題

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文標(biāo)題:利用Python調(diào)用HBASE-創(chuàng)新互聯(lián)
瀏覽路徑:http://muchs.cn/article40/spgeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、品牌網(wǎng)站設(shè)計網(wǎng)站策劃、服務(wù)器托管、外貿(mào)建站、App設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)