Skip to content

Conversation

@conradbzura
Copy link

Description

What was changed in this pull request?

I've added Zarr support to the mutlivec tileset logic. It'll default to HDF5, but the option to read from Zarr is there.

Why is it necessary?

Zarr is a scalable array storage format that aligns nicely with the concept of a tileset. It should be more efficient to read Zarr than HDF5, particularly for large mutlivecs living on cloud-based object storage.

Fixes #162

Checklist

  • Unit tests added or updated
  • Updated CHANGELOG.md
  • Run black .

@conradbzura
Copy link
Author

My implementation adds a storage parameter to the tile getter functions (e.g., here). I could use some input as to how best to expose this to Higlass, however, as there is no way to pass extra arguments to the dynamically-generated "lazy clodius loader" currently. My thought would be to accept additional kwargs to the loader class somehow. Could sprinkle in some typing.ParamSpec magic to make it user friendly in an IDE, too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement tileset server for Zarr-backed multivec files.

1 participant