Store class that uses HTTP requests.
Read-only. Depends on the crul package.
Format
R6::R6Class inheriting from Store.
Details
This is also the way to read an S3-compatible bucket over plain HTTPS.
Most public object stores — MinIO, Ceph, Open Storage Network pods,
Cloudflare R2, and Google Cloud Storage — expose their objects at a URL,
so an s3://bucket/key address with endpoint https://host becomes:
https://host/bucket/keyUnlike S3Store and GcsStore, HttpStore works on both distribution
tiers: it falls back to the R-native crul code path when the zarrs
backend is not compiled in, and uses parallel chunk decode when it is.
It needs no credentials and no environment configuration.
When the store publishes consolidated metadata (a .zmetadata key),
listdir() reports its members; without it, HTTP stores cannot be listed
and you must address arrays by name.
See also
S3Store for s3:// URLs via the zarrs backend.
vignette("remote-stores") for worked examples.
Other Store classes:
DirectoryStore,
GcsStore,
MemoryStore,
S3Store,
Store
Super class
Store -> HttpStore
Methods
HttpStore$new()
Create a HttpStore object
Usage
HttpStore$new(url, options = NA, headers = NA)HttpStore$get_store_identifier()
Print a human-readable summary of the store.
Return the store URL for zarrs dispatch.
Examples
if (FALSE) { # \dontrun{
# USGS gridMET on an Open Storage Network pod, addressed over HTTPS.
store <- HttpStore$new("https://usgs.osn.mghpcc.org/mdmf/gdp/gridMET.zarr")
g <- zarr_open(store)
store$listdir()
} # }
