Skip to content

[Diff PR] Sharding storage transformer for v3 #2

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

Conversation

jstriebel
Copy link

@jstriebel jstriebel commented Aug 18, 2022

Technical Notes
This PR provides a readable diff between zarr-developers#1111 and zarr-developers#1096 and is mainly meant for reviews.

Description

This PR

  • adds a sharding storage transformer:
    • based on the current spec proposal from ZEP2
    • supports partial reads
    • writes are limited so far: partial writes are not efficient yet, shards are always completely rewritten
      (a more efficient implementation might be a good follow-up)
  • adapts the v3 fsspec store to allow partial reads
  • uses partial reads for uncompressed v3 arrays
    (some refactoring might be needed in core.py to simplify the code-paths, but I'd rather defer this to a separate PR to keep the diff readable)
  • added test cases

@jstriebel jstriebel self-assigned this Aug 18, 2022
@jstriebel jstriebel changed the title [WIP] add sharding storage transformer [Diff PR] Sharding storage transformer for v3 Aug 22, 2022
jstriebel and others added 8 commits December 22, 2022 13:47
…1096)

* add storage_transformers and get/set_partial_values

* formatting

* add docs and release notes

* add test_core testcase

* Update zarr/creation.py

Co-authored-by: Gregory Lee <[email protected]>

* apply PR feedback

* add comment that storage_transformers=None is the same as storage_transformers=[]

* use empty tuple as default for storage_transformers

* make mypy happy

* better coverage, minor fix, adding rmdir

* add missing rmdir to test

* increase coverage

* improve test coverage

* fix TestArrayWithStorageTransformersV3

* Update zarr/creation.py

Co-authored-by: Gregory Lee <[email protected]>

* pick generic storage transformer changes from zarr-developers#1111

* increase coverage

* fix order of storage transformers

* retrigger CI

* minor fixes

* make flake8 happy

* apply PR feedback

Co-authored-by: Gregory Lee <[email protected]>
Co-authored-by: Josh Moore <[email protected]>
@jstriebel
Copy link
Author

Not needed anymore, since zarr-developers#1096 is merged. Please refer to zarr-developers#1111 directly.

@jstriebel jstriebel closed this Jan 23, 2023
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.

1 participant