Я использую fileio.MatchFiles
для загрузки большого количества файлов изображений из Google Cloud Storage. Файлы находятся в одной корзине GCS, и их имена удовлетворяют некоторым шаблонам. Я заметил, что последующие преобразования не будут выполняться, пока не будут перечислены все файлы. Когда файлов больше 100k, список становится очень-очень медленным.
Интересно, является ли это ожидаемым поведением. Кроме того, я ищу оптимизацию, которая могла бы улучшить производительность. Думаю сделать что-то вроде
files = [
p | f"match {u}" >> fileio.MatchFiles(f"gs://bucket/{u}*.jpg")
for u in "a..z"
]
files
| beam.Flatten() ...