Я пытаюсь прочитать набор CSV в S3 в Dask DataFrame.
Ведро имеет глубокую иерархию и содержит также несколько файлов метаданных.
звонок выглядит как
dd.read_csv('s3://mybucket/dataset/*/*/*/*/*/*.csv')
Это приводит к зависанию Даска. Реальная проблема заключается в том, что s3fs.glob
зависает, пытаясь разрешить шаблон с таким большим количеством звезд. Я попытался заменить глобус явным списком, вычисленным как boto3.list_objects
, но это может вернуть максимум 1000 путей; У меня на порядки больше.
Как эффективно указать этот набор файлов для dask.dataframe.read_csv
?
Один из способов перефразировать этот вопрос может быть следующим: Как мне эффективно получить полный рекурсивный список большого блока S3 в Python? Это игнорирует возможность использования какого-либо другого способа вызова dask.dataframe.read_csv
.
на основе шаблонов.