Spec-Zone.ru › DuckDB

Использование файловых систем fsspec

Поддержка DuckDB для fsspec файловых систем позволяет запрашивать данные в файловых системах, которые не поддерживает расширение httpfs DuckDB. fsspec содержит большое количество встроенных файловых систем, а также много внешних реализаций. Эта возможность доступна только в Python-клиенте DuckDB, поскольку fsspec является Python-библиотекой, в то время как расширение httpfs доступно во многих клиентах DuckDB.

Пример

Ниже приведен пример использования fsspec для запроса файла в Google Cloud Storage (вместо использования их API, совместимого с S3).

Во-первых, необходимо установить duckdb и fsspec, а также интерфейс файловой системы по своему выбору.

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. Также следует отметить, что, поскольку это библиотеки сторонних разработчиков, они могут содержать ошибки, которые находятся вне нашего контроля.

© Copyright 2018–2024 Stichting DuckDB Foundation
Licensed under the MIT License.
https://duckdb.org/docs/guides/python/filesystems.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API