-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initial check-in for zarr3 shard utilities #13
Conversation
The main driver here is the is the function The signature of this function is as follows: def zarr3_shard_hdf5_template(
shard_file_name: str,
shard_shape: tuple[int, ...],
chunk_shape: tuple[int, ...],
dtype: str,
*,
verify: bool = False,
delete_backup = False
) -> None Usage looks as follows:
This currently expects to extract raw chunks from an existing shard and then rewrite it into a HDF5 file. The HDF5 consists of two datasets (arrays):
The The HDF5 file is carefully crafted to position the According to the Zarr 3 shard specification the Zarr 3 shard index must begin The HDF5 header is is allocated via h5py's The source Zarr version 3 shard has chunks in Morton order as is the default order of zarr-python. This utility function preserves the orders of the original shard.
Full chunk address listing
|
This ready for review? |
Add some additional documentation and typing information
Welcome to Codecov 🎉Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests. Thanks for integrating Codecov - We've got you covered ☂️ |
Almost there. I'm adjusting a few things since I realized that n5-hdf5 might be the target consumer of the HDF5 files. |
Are we committing to using tensorstore as the main driver for Zarr? |
I'm vascillating on if the functions should have a prefix of "zarr3_shard" or not. |
@rhoadesScholar Do you have a second to touch base on this? |
Closing since this is not currently needed. Happy to reopen if needed. |
Add Zarr version 3 shard utilities