Welcome to h5preserve’s documentation!

h5preserve is a wrapper around h5py and hdf5, providing easier serialisation of native python types. Its design is inspired by Camel, and follows its philosophy.

Why use h5preserve?

The purpose of h5preserve is to provide a simple serialisation library to hdf5 files. Hence h5preserve has support for complex numerical data, multidimensional arrays etc., which other serialisation formats may not represent as effectively. h5preserve makes it easy to split out the interaction with hdf5 files from the main logic of your code. Since h5preserve is designed to hide the underlying hdf5 file, large files where memory usage is a concern do not work well with h5preserve. In this case, h5preserve provides easy access to the underlying h5py objects, or you may want to look at using pytables, which provides a more database-like interface to hdf5 files.

Why the name?

The name comes from the “h5” label associated with hdf5, and the idea of preserving or pickling data.

Citing h5preserve

If you find h5preserve useful in your research, please cite the JOSS paper, as well as h5preserve’s dependencies, h5py, numpy and hdf5. Further information about citing h5preserve, including specific releases, can be found at Citing h5preserve.

Contents:

Indices and tables