⌘+k ctrl+k
1.4 (LTS)
搜索快捷键 cmd + k | ctrl + k
使用 fsspec 文件系统

DuckDB 对 fsspec 文件系统的支持,允许查询 DuckDB 的 httpfs 扩展所不支持的文件系统中的数据。fsspec 拥有大量内置文件系统,同时也存在许多外部实现。此功能仅在 DuckDB 的 Python 客户端中可用,因为 fsspec 是一个 Python 库,而 httpfs 扩展则可在多个 DuckDB 客户端中使用。

示例

以下是一个使用 fsspec 查询 Google Cloud Storage 中文件的示例(而非使用其 S3 兼容 API)。

首先,您必须安装 duckdbfsspec 以及您所选择的文件系统接口。

pip install duckdb fsspec gcsfs

然后,您可以注册任何您想要查询的文件系统

import duckdb
from fsspec import filesystem

# this line will throw an exception if the appropriate filesystem interface is not installed
duckdb.register_filesystem(filesystem('gcs'))

duckdb.sql("SELECT * FROM read_csv('gcs:///bucket/file.csv')")

这些文件系统并非由 C++ 实现,因此其性能可能无法与 httpfs 扩展所提供的文件系统相媲美。同样值得注意的是,由于它们属于第三方库,可能包含超出我们控制范围的错误。

© 2025 DuckDB 基金会,阿姆斯特丹,荷兰
行为准则 商标使用指南