Как я могу ускорить загрузчик App Engine?
Я пытаюсь использовать загрузчик App Engine для загрузки сущностей из хранилища данных (с высокой степенью репликации, если это имеет значение). Это работает, но довольно медленно (85 КБ / с). Есть ли какой-то волшебный набор параметров, которые я могу передать, чтобы сделать это быстрее? Я получаю около 5 МБ / мин или 20000 записей / мин, и учитывая, что мое соединение может работать со скоростью 1 МБ / с (и, надеюсь, App Engine может работать быстрее, чем это), должен быть способ сделать это быстрее.
Вот моя текущая команда. Я пробовал большие числа, низкие числа и каждую перестановку:
appcfg.py download_data
--application=xxx
--url=http://xxx.appspot.com/_ah/remote_api
--filename=backup.csv
--rps_limit=30000
--bandwidth_limit=100000000
--batch_size=500
--http_limit=32
--num_threads=30
--config_file=bulkloader.yaml
--kind=foo
Я уже пробовал эту производительность App Engine Bulk Loader, и она не быстрее, чем у меня уже есть. Число, которое он упоминает, соответствует тому, что я вижу.
Заранее спасибо.
1 ответ
Вы установили индекс ключа сущности, которую вы пытаетесь загрузить?
Я не знаю, помогает ли это, но проверьте, появляется ли в начале загрузки предупреждение, которое говорит о "использовании последовательной загрузки"
Поместите это в index.yaml, чтобы создать индекс для загрузки ключа сущности, и дождитесь его создания.
- kind: YOUR_ENTITY_TYPE
properties:
- name: __key__
direction: desc