Binary Table File - efficient binary file format to store and retrieve tabular data
Project description
Binary Table File format
Binary Table File - efficient binary file format to store and retrieve tabular data
This library is written in Cython for speed efficiency.
- is basically a typed CSV, but binary and indexed,
supporting only a subset of the types:
int, float, bool, Decimal. - The table is backed by a file on disk, and is NOT memory-mapped.
This class just interfaces the reading/writing of the file through a
listinterface. - All the data is indexed and can be accessed as the list of records, where each record is a tuple of values.
- It's main purpose are big files that don't fit into memory, or the files that are read partially. Ex. a few records from the middle of the file.
- It can efficiently slice through the file and read just last N records, or just the first N records.
- The footprint of the file is quite small as the data is binary encoded.
- It can be used with a seek-able compression format without losing efficiency on indexing, like idzip
Installation
pip install bintablefile
The library can be found on PyPi: https://pypi.org/project/bintablefile/
Note: We release directly v2.0 as v1.0 was used just internally and was not released to PyPI. The major improvement of V2 is a full-featured header, that allows to store metadata about the table, as well as store the number of records for ReadOnly compression formats like idzip.
Local development build
pip install -e ".[dev]"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
bintablefile-2.2.5.tar.gz
(225.3 kB
view details)
File details
Details for the file bintablefile-2.2.5.tar.gz.
File metadata
- Download URL: bintablefile-2.2.5.tar.gz
- Upload date:
- Size: 225.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
44aa78a8e971c2f29e0024fa72cbfde6e97b1a04e0f3dc95cf2ba4cce569c881
|
|
| MD5 |
4547696eaf66f1f0f02a942cd578240a
|
|
| BLAKE2b-256 |
8674a8e8995f3aee299ab04155537da308131674db8616f17a72ab34079dc986
|