skillfed

happybase

A developer-friendly Python library to interact with Apache HBase

happybase v1.3.0 74.9K downloads/30d#14,778 on PyPI608
Permissive license MIT Active released

What it is and what it does

HappyBase is a Python wrapper around the HBase Thrift API that abstracts away low-level connection and serialization details. It lets you interact with Apache HBase—a distributed, column-oriented NoSQL database—using familiar Python idioms: opening connections, accessing tables, reading and writing rows, and scanning data ranges without wrestling with Thrift protocol mechanics directly.

The library is built on thriftpy2 for Thrift communication and six for Python 2/3 compatibility. It is classified as Production/Stable and has been maintained since 2012, making it a mature choice for Python applications that need HBase access. The project is actively developed with a recent release in September 2025.

Use it for:

  • Build a Python application that reads and writes time-series data stored in HBase tables for analytics or monitoring.
  • Migrate data between HBase and other systems using Python scripts that scan and transform rows.
  • Prototype or test HBase table schemas and data operations before deploying to production systems.
  • Integrate HBase as a backend store for a Python web application or data pipeline.
  • Perform batch operations on HBase data, such as bulk inserts or conditional updates, from Python.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

HappyBase is a Python library that provides a developer-friendly interface to Apache HBase, enabling you to read, write, and manage data in HBase tables through straightforward Python code.

Yes, if you need to work with Apache HBase from Python. The library is mature, actively maintained, has low install friction, and carries no known security vulnerabilities. The main constraint is that HBase itself must be deployed and running separately—this is not a pure-Python solution. MIT licensing poses no restrictions for any project type.

Install

happybase on PyPI

pip

pip install happybase

uv

uv add happybase

poetry

poetry add happybase

Installing happybase

Before you install

Low friction installation with a pure-Python wheel and only three runtime dependencies (six, thriftpy2, importlib-resources). The project is actively maintained with a recent release in September 2025 and ongoing commits.

License in practice

MIT license is permissive, allowing unrestricted use, modification, and distribution in both open-source and commercial projects with minimal obligations beyond retaining the license notice.

Quickstart

pip install happybase

import happybase
connection = happybase.Connection('localhost')
table = connection.table('my_table')
row = table.row(b'row_key')

Requires a running Apache HBase instance accessible at the specified host and port; HBase itself is a Java application and must be deployed separately.

Verify before relying

  • Whether thriftpy2 dependency introduces any compatibility issues with modern Python versions or HBase server versions.
  • Current state of HBase protocol support relative to recent HBase releases.
  • Actual Python version support, as requires_python is unspecified in the fact sheet.

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 3 — six, thriftpy2, importlib-resources
Maintenance actively maintained — 322 days since the last release
Last repo commit
First released
Downloads 74,875/month — #14,778 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: happybase-1.3.0-py2.py3-none-any.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 2Programming Language :: Python :: 3Topic :: DatabaseTopic :: Software Development :: Libraries :: Python Modules

Tags

hbase python clientapache hbase libraryhbase table operationsnosql database pythonhbase data accessdistributed database pythonhbase connection management
hbasenosqldistributed-database

More Python Modules packages