用途:Zarr Python 用于存储大型 N 维数组,通过分块与压缩实现高效并行 I/O 和云原生工作流,适合大规模科学计算数据。
主要能力:支持创建、打开、读写、调整大小和追加数组,提供 NumPy 风格索引及 vindex、oindex、blocks 等高级索引;支持分块策略与 sharding,可将大量小分块合并为更大存储对象;支持 Blosc、Gzip、Zstd 等压缩编解码器;支持本地文件系统、内存、ZIP、S3、GCS 等存储后端;支持 Group 层级组织、h5py 兼容 API、JSON 属性元数据;可与 NumPy、Dask、Xarray 集成,并支持线程/进程同步与合并元数据。
使用方式:安装命令为 uv pip install zarr,要求 Python 3.11+;云存储需额外安装 s3fs 或 gcsfs。基本用法包括 zarr.create_array、zarr.zeros、zarr.open_array、zarr.open、zarr.group 等,读写采用 NumPy 风格切片。
适用场景:大规模科学计算、气候与地理空间数据、时间序列、云原生数据存储、超出内存的数据集并行计算。
限制:分块大小与形状需按访问模式选择,整块或整个 shard 需能放入内存;合并元数据在频繁更新或多写入者场景可能过期或不一致;并发写入跨分块边界时需要同步;属性必须可 JSON 序列化。部分细节资料未提供。