--- id: tables version: "3.11.1" license: BSD 3-Clause License license_treatment: permissive maintenance: active --- # tables — Hierarchical datasets for Python License: permissive · Maintenance: active · Downloads: 6.5M/mo ## What it is and what it does PyTables is a Python library built on HDF5 that stores and retrieves hierarchical datasets with built-in compression and an object-oriented API. It optimizes memory and disk usage by compressing data on write and decompressing on read, supporting state-of-the-art Blosc compression out of the box. The library is designed for scientific and data-intensive applications that work with large multidimensional arrays, tables of fixed-length records, and enlargeable arrays—not as a relational database replacement, but as a specialized tool for efficient bulk storage and retrieval. The package depends on NumPy, NumExpr, packaging, py-cpuinfo, and blosc2, and requires a system HDF5 library to compile. It is actively maintained, supports Python 3.11 through 3.14, and offers pre-built wheels for macOS (Intel and ARM), Linux (x86_64 and aarch64), and Windows, reducing installation friction on common platforms. Use it for: - Store and query large time-series datasets from data acquisition systems or network monitoring without the overhead of a relational database. - Archive multidimensional scientific simulation outputs (e.g., climate models, physics simulations) with efficient compression and hierarchical organization. - Centralize system logs or structured event data from distributed systems in a single compressed repository. - Perform interactive analysis on datasets too large to fit in memory by using PyTables' iterators and lazy-loading capabilities. - Replace inefficient flat-file or database storage for columnar scientific data where compression and I/O speed are critical. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. PyTables provides an object-oriented interface to HDF5 for storing and retrieving hierarchical datasets with efficient compression, designed to handle extremely large amounts of multidimensional data. Yes, if you work with large multidimensional datasets or time-series data and need efficient compression and hierarchical storage. The active maintenance, permissive license, and broad platform support make it a solid choice. Install friction is moderate due to HDF5 dependency, but pre-built wheels mitigate this for common platforms. Not suitable if you need relational query capabilities or are working with small datasets where compression overhead outweighs benefits. ## Install pip install tables uv add tables poetry add tables ## Installing tables Before you install: Medium install friction due to compiled C extensions and HDF5 library dependency. Active maintenance with recent releases; requires HDF5 1.10.5 or above and system libraries like libhdf5-serial-dev on Linux. Pre-built wheels available for common platforms reduce friction. License in practice: BSD 3-Clause License (permissive) allows commercial and private use with minimal restrictions; attribution required but no copyleft obligations. Quickstart: pip install tables import tables with tables.open_file('data.h5', mode='w') as h5file: h5file.create_table('/', 'mytable', description={'col1': tables.Int32Col()}) Requires HDF5 C library (libhdf5-serial-dev on Debian/Ubuntu) and Python 3.11 or later; blosc2 compression library is mandatory. Verify before relying: - Whether the stated 3–5x compression ratio applies to typical user workloads or only to highly compressible data. - Performance characteristics compared to alternatives like Parquet or NetCDF for specific use cases. - Whether all optional compressors (LZO, bzip2) are available in pre-built wheels or require separate installation. ## Package facts - License: BSD 3-Clause License (permissive) - Python support: supports_current - Install friction: medium - Maintenance: active - Downloads: 6.5M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags hdf5 python interface, hierarchical data storage, large dataset compression, scientific data management, multidimensional array storage, efficient data serialization, blosc compression support, hdf5, scientific-data, compression [View on SkillFed](https://skillfed.io/packages/tables) · [View on PyPI](https://pypi.org/project/tables/)