使用happybase操作HBase

from collections import OrderedDict
import happybase
connection = happybase.Connection('localhost', autoconnect=False)
connection.open()

table = connection.table('live_gift')
data = table.scan(filter="SingleColumnValueFilter('g', 'live_id', =, 'binary:15909')" and "SingleColumnValueFilter('g', 'gift_price', =, 'binary:20')", limit=20)
for k, d in data:
    print(k, d)
    

data = table.scan(columns=[b'g:user_id', b'g:gift_price'], filter="SingleColumnValueFilter('g', 'live_id', =, 'binary:15909')" and "SingleColumnValueFilter('g', 'gift_price', =, 'binary:20')", limit=20)

###求和
sum = 0
for k, d in data:
    gift_price = d['g:gift_price']
    sum = sum + int(gift_price)
    

        
        
new_data = table.counter_set(b'8029302121941_50001_534UYISNEHC_23171-key', b'g:live_id')
rows_as_dict = dict(table.rows([b'row-key-1', b'row-key-2']))
rows_as_ordered_dict = OrderedDict(data)


##计数
data = table.scan(columns=[b's:live_id', b's:start_time'], filter="SingleColumnValueFilter('s', 'start_time', >=, 'binary:1490976000')") 
count = 0
for k, d in data:
    live_id = d['s:live_id']
    count += 1
print(count)  ##live_num, 1249

    
##计数Method two
mylist =[]
data = table.scan(columns=[b's:live_id', b's:start_time'], filter="SingleColumnValueFilter('s', 'start_time', >=, 'binary:1490976000')")  
for k, d in data:
    live_id = d['s:live_id']
    mylist.append(live_id)
    
live_num = len(mylist)


import time
dt = "2016-04-01 00:00:00"
timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S")
timestamp = int(time.mktime(timeArray))
timestamp


import time

##日期转为时间戳
def Timestamp_conversion(date):
    timeArray = time.strptime(date, "%Y-%m-%d %H:%M:%S")
    timestamp = int(time.mktime(timeArray))
    return timestamp
    
##时间戳转为日期
def date_conversion(timestamp):
    time_local = time.localtime(timestamp)
    date = time.strftime("%Y-%m-%d %H:%M:%S",time_local)
    return date

转载于:https://my.oschina.net/kyo4321/blog/1068415

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值