SuperAPI AI 工具集

zarr-python

编程与开发

查看项目

更新于 10-15 20:29

技能介绍

用途:Zarr Python 用于存储大型 N 维数组,通过分块与压缩实现高效并行 I/O 和云原生工作流,适合大规模科学计算。

主要能力:支持创建、打开、读写、调整大小和追加数组,提供 NumPy 风格索引及 vindex、oindex、blocks 等高级索引;支持分块策略与 sharding,可将大量小分块合并为较大存储对象;支持 Blosc、Gzip、Zstd 等压缩编解码器;支持本地文件系统、内存、ZIP、S3、GCS 等存储后端;支持组与层级结构、h5py 兼容 API、JSON 属性元数据;可与 NumPy、Dask、Xarray 集成,实现惰性并行计算和带标签的多维数组操作;提供线程与进程同步器,以及合并元数据以减少云存储延迟。

使用方式:安装命令为 uv pip install zarr,需 Python 3.11+;云存储需额外安装 uv pip install s3fs 或 uv pip install gcsfs。基本用法是调用 zarr.create_array、zarr.zeros、zarr.ones、zarr.full、zarr.array 等创建数组,用 zarr.open_array 或 zarr.open 打开,通过切片赋值读写数据。

适用场景:大规模科学数据、气候与地理空间数据、时间序列、大矩阵运算、云原生数据管道,以及需要超出内存的并行计算场景。

限制:分块大小与形状显著影响性能,需按访问模式选择;整个分块或 shard 在压缩和写入时须能放入内存;合并元数据在数据频繁更新时可能过期,不适合多写入者场景;并发写入跨分块边界时需要同步器。资料未提供具体收费、价格或平台信息。