Есть ли более быстрый способ загрузить список больших двоичных объектов из корзины? - PullRequest
0 голосов
/ 16 января 2019

Я хочу загрузить список больших двоичных объектов (> 100000) из корзины на GCP. Каждый BLOB-объект содержит небольшое количество данных (<1 КБ). Прямо сейчас я в среднем на 20 капель в секунду, что очень медленно. Я использую следующий код: </p>

storage_client = storage.Client()
bucket = storage_client.get_bucket('my_bucket')
blobs = bucket.list_blobs(prefix='foobar/')
result = []
for blob in blobs:
  result.append(blob.download_as_string())

Есть ли более быстрый способ сделать это?

1 Ответ

0 голосов
/ 16 января 2019

Я не знаю о Google Cloud Storage, но вы могли бы создать ThreadPoolExecutor (из модуля concurrent.futures) с несколькими работниками и отправить кусочек капли каждому.

Они особенно подходят для таких задач, связанных с вводом / выводом, как ваша.

Документация написана хорошо.

...