Skip to main content

Module extensible_array

Module extensible_array 

Source
Expand description

Extensible Array (EA) chunk index structures for HDF5.

Implements the on-disk format for the extensible array used to index chunked datasets with one unlimited dimension (the typical SWMR use case).

Structures:

  • Header (EAHD): metadata and statistics about the extensible array
  • Index Block (EAIB): holds direct chunk addresses and pointers to data/super blocks
  • Data Block (EADB): holds additional chunk addresses when the index block is full

Structs§

ExtensibleArrayDataBlock
Extensible array data block.
ExtensibleArrayHeader
Extensible array header.
ExtensibleArrayIndexBlock
Extensible array index block.
FilteredChunkEntry
A filtered chunk element stored in the extensible array.
FilteredDataBlock
Filtered variant of the extensible array data block.
FilteredIndexBlock
Filtered variant of the extensible array index block.

Constants§

EADB_SIGNATURE
Signature for the extensible array data block.
EAHD_SIGNATURE
Signature for the extensible array header.
EAIB_SIGNATURE
Signature for the extensible array index block.
EA_CLS_CHUNK
Class ID for unfiltered chunks (H5EA_CLS_CHUNK).
EA_CLS_FILT_CHUNK
Class ID for filtered chunks (H5EA_CLS_FILT_CHUNK).
EA_VERSION
Extensible array version.

Functions§

compute_chunk_size_len
Compute chunk_size_len: bytes needed to encode the uncompressed chunk size. Formula from HDF5 C: 1 + (log2(chunk_size) + 8) / 8, capped at 8.
compute_ndblk_addrs
Compute ndblk_addrs for the index block given the default params.
compute_nsblk_addrs
Compute nsblk_addrs for the index block: the number of super block address slots stored in the EAIB.