用途:本技能是一份在 Python 中访问云存储(S3、GCS、Azure)与远程文件系统的综合指南,覆盖 fsspec、pyarrow.fs、obstore 三个库及其与数据工程工具的集成。
主要能力与库对比:fsspec 适合广泛的生态兼容与多后端(S3、GCS、Azure、HTTP、FTP 等 20+),支持协议链式与缓存,依赖按后端安装(s3fs、gcsfs);pyarrow.fs 适合 Arrow/Parquet 原生流程,内置 PyArrow 依赖,支持谓词下推与列裁剪;obstore 基于 Rust,适合高吞吐与高并发,支持原生同步/异步,零 Python 依赖,资料称并发操作约快 9 倍,但为 2025 年较新库、生态较小。
使用方式示例:fsspec 可 fsspec.filesystem('s3') 并以 open 读取;pyarrow.fs 可 fs.S3FileSystem(region='us-east-1') 配合 pq.read_table 读 Parquet;obstore 用 S3Store(bucket=..., region=...) 与 obs.get 取对象。DataFrame 侧:Polars 支持原生 s3://、gs://、az:// URI 的 read_parquet/scan_parquet;DuckDB 通过 INSTALL httpfs; LOAD httpfs; 后对远程 Parquet/JSON/CSV 执行 SQL;Pandas 借助 fsspec 自动识别云 URI;PyArrow 用 dataset 扫描并支持过滤与列裁剪。
适用场景:需要在云对象存储上做数据读取、分析、写入与分区输出,或希望在 Polars、DuckDB、Pandas、PyArrow 间选择合适 I/O 方案时使用。
限制与缺失:各库安装命令与代码示例见资料原文;原文未提供官方文档链接、定价、版本兼容细节与完整基准测试数据,暂未提供。使用前需按所用云平台准备认证凭据。