Add `xarray.open_dataset` backend
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Leggi la guida di xarray su come aggiungere un nuovo backend e il prototipo costruito attorno a xarray.backends.BackendEntrypoint. Parti dal punto di ingresso xarray.open_dataset(..., engine="kerchunk") e determina come vengono riconosciuti e aperti i formati di riferimento di kerchunk. Il lavoro è completato quando il backend è utilizzabile tramite questa API per i riferimenti descritti, con una copertura adeguata del progetto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
https://docs.xarray.dev/en/stable/internals/how-to-add-new-backend.html describes how to add a new backend to xarray's open_dataset. Adding a backend will make it easier for users to consume kerchunk references.
Here's a prototype:
from xarray.backends import BackendEntrypoint
class KerchunkBackendEntrypoint(BackendEntrypoint):
def open_dataset(
self,
filename_or_obj,
*,
drop_variables=None,
**kwargs,
):
return my_open_dataset(filename_or_obj, drop_variables=drop_variables, **kwargs)
open_dataset_parameters = ["filename_or_obj", "drop_variables"]
def guess_can_open(self, filename_or_obj):
try:
_, ext = os.path.splitext(filename_or_obj)
except TypeError:
return False
return ext in {".json", ".parquet"}
description = "Use Kerchunk files in Xarray"
url = "https://fsspec.github.io/kerchunk/"
def my_open_dataset(filename_or_obj, drop_variables, **kwargs):
m = fsspec.filesystem("reference", fo=filename_or_obj, **kwargs).get_mapper()
return xr.open_dataset(m, engine="zarr", consolidated=False)
This would be usable like
ds = xr.open_dataset(refs, engine="kerchunk")
ds
This came up at https://discourse.pangeo.io/t/making-kerchunk-as-simple-as-a-toggle/3690.
- Lingua principale
- Python
- Stelle
- 367
- Fork
- 96
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di fsspec/kerchunk
-
add autodask exampleAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 68/100
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
-
CI breakage with new zarrAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Tutte le issue di fsspec/kerchunk
Issue simili
-
docs: Release playbookApertadocumentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
awslabs/social-messaging-agent-runtime-toolkit#140 ·
I maintainer di solito rispondono entro 1 giorno
-
subtask
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
fga-eps-mds/2026.2-MeasureSoftGram-DOC#187 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
txn2/mcp-data-platform#2493 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
YO-WHATS-UP2/minigit#78 ·
I maintainer di solito rispondono entro 3 giorni
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
liberation-data/drivine-python#432 ·
I maintainer di solito rispondono entro 1 giorno