Запрос нескольких файлов паркета в диапазоне с помощью DuckDBPython

Программы на Python
Anonymous
Запрос нескольких файлов паркета в диапазоне с помощью DuckDB

Сообщение Anonymous »

У меня есть файлы паркета, организованные в этом формате

Код: Выделить всё

/db/{year}/table{date}.parquet
В папке каждого года содержится до 365 файлов.
Если я хочу запросить данные из временного диапазона, скажем, с недели с 28 апреля 2024 г. по 4 мая 2024 г., я могу использовать

Код: Выделить всё

SELECT
count(*) as count,
FROM read_parquet('/db/2024/table*.parquet')
WHERE date >= '2024-04-28' and date < '2024-05-05'
Но мне не нужно читать все файлы в /db/2024/table*.parquet. Я точно знаю, в каких семи файлах содержатся нужные мне данные. Как мне определить это в DuckDB? Я использую Питон. Я мог бы выполнить собственную фильтрацию и поместить все файлы в список Python, например имена файлов.

Вернуться в «Python»