Skip to content

hbase-python is a pure python package used to access HBase.

Notifications You must be signed in to change notification settings

nealzh/hbase-python

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 

Repository files navigation

hbase-python

(The development of this package has not finished.)

hbase-python is a python package used to work HBase.

It is now tested under HBase 1.2.6.

Before using HBase, we are familiar with MongoDB and pymongo. While, when coming to HBase, we found it is not easy to access the database via python. So, I spent some days to start this project and hope it can be helpful to our daily research work. The thought of this package comes from "happybase" and "starbase", and I am trying to make the API behaves like "pymongo".

Dependencies

  • Python 3.4+
  • requests

Installation

The package can be installed from PyPI repository:

pip3 install hbase-python

Examples

Get a row by key:

import hbase

zk = 'sis3.ustcdm.org:2181,sis4.ustcdm.org:2181'

if __name__ == '__main__':
    with hbase.ConnectionPool(zk).connect() as conn:
        table = conn['mytest']['videos']
        row = table.get('00001')
        print(row)
    exit()

Scan a table:

import hbase

zk = 'sis3.ustcdm.org:2181,sis4.ustcdm.org:2181'

if __name__ == '__main__':
    with hbase.ConnectionPool(zk).connect() as conn:
        table = conn['mytest']['videos']
        for row in table.scan():
            print(row)
    exit()

Put a record to a table:

import hbase

zk = 'sis3.ustcdm.org:2181,sis4.ustcdm.org:2181'

if __name__ == '__main__':
    with hbase.ConnectionPool(zk).connect() as conn:
        table = conn['mytest']['videos']
        table.put(hbase.Row(
            '0001', {
                'cf:name': b'Lily',
                'cf:age': b'20'
            }
        ))
    exit()

Write a file to a table:

import hbase

zk = 'sis3.ustcdm.org:2181,sis4.ustcdm.org:2181'

if __name__ == '__main__':
    with hbase.ConnectionPool(zk).connect() as conn:
        table = conn['mytest']['videos']
        table.write_file(video_file)  # default filename is "test_video.mp4"
    exit()

About

hbase-python is a pure python package used to access HBase.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%