-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
intake server leads to ERROR: KeyError('xarray') #444
Comments
Thank you for the reproducible example, @wachsylon! I will look into this and will get back to you |
@andersy005 thank you i appreciate it. |
@andersy005 |
Thank you for your patience, @wachsylon! Unfortunately, I haven't had time to look into the root cause of this issue.
I'm curious.... What are the benefits of exposing these catalogs via an intake-server instead of a regular top-level/main catalog? I am imagining a top-level YAML file with the following contents. Users should be able to point intake to this main/parent catalog description: 'DKRZ master catalog for all data pool catalogs available'
plugins:
source:
- module: intake_esm
sources:
dkrz_cmip6_cloud_zarr:
args:
esmcol_obj: https://swift.dkrz.de/v1/dkrz_a44962e3ba914c309a7421573a6949a6/intake-esm/dkrz_cmip6_swift_zarr_fromcloud.json
description: dkrz cmip6 data on disk saved as netcdf retrieved fromcloud
driver: intake_esm.esm_datastore
another_catalog:
args:
esmcol_obj: https://swift.dkrz.de/v1/dkrz_a44962e3ba914c309a7421573a6949a6/intake-esm/dkrz_cmip6_swift_zarr_fromcloud.json
description: dkrz cmip6 data on disk saved as netcdf retrieved fromcloud
driver: intake_esm.esm_datastore
In [18]: import intake
In [19]: cat = intake.open_catalog("temp.yaml")
In [20]: list(cat)
Out[20]: ['dkrz_cmip6_cloud_zarr']
In [21]: esmcat = cat["dkrz_cmip6_cloud_zarr"]
In [22]: esmcat.df.head()
Out[22]:
prefix ... version
0 CMIP6.CMIP.AWI.AWI-CM-1-1-MR.historical.r1i1p1... ... v20181218
1 CMIP6.CMIP.AWI.AWI-CM-1-1-MR.historical.r1i1p1... ... v20181218
2 CMIP6.CMIP.AWI.AWI-CM-1-1-MR.historical.r1i1p1... ... v20181218
3 CMIP6.CMIP.AWI.AWI-CM-1-1-MR.historical.r1i1p1... ... v20181218
4 CMIP6.CMIP.AWI.AWI-CM-1-1-MR.historical.r1i1p1... ... v20181218
[5 rows x 12 columns] |
@andersy005 I know that we could create a hierarchy of catalogs and create catalogs on finer level but that may not fit to many use cases as e.g. in CMIP6, users are interested in several MIPs (=activity, e.g. ScenarioMIP or PMIP) at once. We could also wait for a STAC solution but at MPI-M, intake is and will be used a lot anyway so that I would like to get intake server to work. I also could not start an intake server for Pangeo btw. If I understood correctly, the intake server can cache the catalog. Therefore, the server only loads the catalog for many requests, correct? I can set up a VM which users can use to subset the catalog. |
Thank you for the clarification/details, @wachsylon! I haven't used the intake-server before. From my short experimentation, it appears that there are some things that are missing within intake-esm to allow seamless integration with the intake-server I'll do my best to find time to look into this today/tomorrow. |
Any news on that?
sounds bad :( |
Serving intake-esm catalog and assets via intake-server will require rewriting some of the components of intake-esm. Unfortunately, my schedule is too tight and I don't have time to look into this extensively any time soon but I'd be happy to review pull requests if someone is interested in pursuing this... |
Ok thanks for letting me know! |
Description
I tried out the intake-server. In the end, I would like to have a server for some or all cats of:
https://swiftbrowser.dkrz.de/public/dkrz_a44962e3ba914c309a7421573a6949a6/intake-esm/
The entry catalog is
dkrz_data-pool_cloudcatalog.yaml
I started the server from the same environment as from where I did client commands. I installed intake_xarray as well.
Do you have an idea what the problem is? I saw that the remote catalog wants to use sth like
container: xarray
what I do not really understand. What is a container? Why xarray?What I Did
Version information: output of
intake_esm.show_versions()
Paste the output of
intake_esm.show_versions()
here:The text was updated successfully, but these errors were encountered: