Skip to content
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

Allow creating spatial pyramid levels #38

Closed
forman opened this issue Mar 11, 2019 · 1 comment
Closed

Allow creating spatial pyramid levels #38

forman opened this issue Mar 11, 2019 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@forman
Copy link
Member

forman commented Mar 11, 2019

xcube-server is encountering massive performance problems when low-res tiles are created from spatial hi-res dataset, especially when their chunking is not ideal for tile extraction in the spatial dimensions. This is because spatial resolution levels are computed on the fly. For the lowest resolution (level zero) tiles, all hi-res data need to be read.

We need a data format that allows xcube-server to read from spatial pyramid levels, if they exist, and a tool that can generate spatial pyramid levels from hi-res datasets.

Format suggestion

Let some/file/path/bigdata.zarr be the path to an hi-res dataset, then physical representation of the spatial pyramid with 8 levels could be as follows:

    - some/file/path/bigdata.zarr
    - some/file/path/bigdata.levels/
      - 0.lnk        # contains link to original dataset at spatial resolution res0
      - 1.zarr/     # First downsampled level with res = res0 * 2^1
      - 2.zarr/     # Second downsampled level with res = res0 * 2^2
      ...
      - 7.zarr/     # Second downsampled level with res = res0 * 2^7

All levels have the same chunking. The number of chunks in one of the spatial dimensions at highest level is one, all other levels have multiple chunks in spatial dimensions.

Another possibility is that all the levels go into a single ZARR dataset.

@forman forman self-assigned this Mar 11, 2019
@forman forman added enhancement New feature or request in progress The assignee is working on it labels Mar 11, 2019
@forman forman removed the in progress The assignee is working on it label May 2, 2019
@forman
Copy link
Member Author

forman commented May 2, 2019

Done!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant