Skip to main content

Dead-simple and easy-to-hack RecordIO-like data storing. Inspired by MXNet's RecordIO and Protobuf.

Project description

Dead Simple Records

Easy to hack and dead simple RecordIO-like data storing. Inspired by MXNet's RecordIO and Protobuf.

(planned) features

  • Binary-based data format with index file
  • Easy custom serialization schemes
  • Common serialization schemes (more TBA)
  • Documentation
  • Append, update, delete data sample
  • Pack/unpack form
  • Schema serialization

Quick start

See the overview section in the documentations.

Also, check out this notebook for a quick example, this notebook has not been updated in a while though.

How does it work?

Saving

  1. Open an empty file, this is the data file.
  2. Take whatever data you got, serialize it in a way (for example, write to PNG buffer)
  3. Write the serialized data to the said file buffer, store the offset and size of the data
  4. Repeat until all data are written
  5. Write all the offsets and sizes to another file (index file)

Loading

  1. Load the data file and the index file.
  2. When given an index, use the index file to get the offset and size of the data.
  3. Seek the file pointer to the offset, read the exact size and deserialize the data.

Prebuilt format

Customized serialization format

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dsrecords-0.4.18.tar.gz (10.1 kB view details)

Uploaded Source

File details

Details for the file dsrecords-0.4.18.tar.gz.

File metadata

  • Download URL: dsrecords-0.4.18.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for dsrecords-0.4.18.tar.gz
Algorithm Hash digest
SHA256 72ccec9342bc6ae619ddb0498b2f7832835f42fcc6351442d55af99394419f40
MD5 1afef3b5311104ddee15a064766a9fda
BLAKE2b-256 46faa35826e4d93024e15ec524e44a87db07193cd7a24a32fee2b54fa257aff0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page