У меня на s3 многосекционный паркет. Каждый раздел содержит несколько файлов паркета. Приведенный ниже код ограничивается одним разделом, который может содержать около 30 файлов паркета. Когда я использую scan_parquet по адресу s3, который включает подстановочный знак *.parquet, он просматривает только первый файл в разделе. Я проверил это с помощью подсчета клиентов. Он имеет счетчик только с первого файла в разделе. Есть ли способ сканирования файлов?
Код: Выделить всё
import polars as pl
s3_loc = "s3://some_bucket/some_parquet/some_partion=123/*.parquet"
df = pl.scan_parquet(s3_loc)
cus_count = df.select(pl.count('customers')).collect()
Если я оставлю *.parquet в адресе s3, я получу следующую ошибку.
Код: Выделить всё
exceptions.ArrowErrorException: ExternalFormat("File out of specification: A parquet file must containt a header and footer with at least 12 bytes")
Подробнее здесь:
https://stackoverflow.com/questions/742 ... quet-files