У меня есть вопрос о загрузке 1,5 ГБ данных из хранилища данных Google с Threading и самый быстрый способ в C # - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть Google Datastore Данные 1.5Gb (около 800000 сущности), для загрузки всего потребуется около 4000 секунд data.

1) можно ли сделать это быстро?

2) можем ли мы сжимать данные с помощью " accept-encoding: gzip " при запросе клиентского API GoogleХранилище данных?

1) Я пытался запустить RunQueryLazily, но он будет загружен в 300 объектов / секунд, но загрузка целых данных займет 2666 секунд, но это не быстро.

Query queryString = new Query(kindname);
var data = _db.RunQueryLazily(queryString);

foreach (Entity entity in data)

{

....

store in inner class model

....

}

ВыводРезультатом будет большой список данных.

1 Ответ

0 голосов
/ 12 февраля 2019

1) Если вы хотите получить все свои данные быстрее, вам следует подумать о распараллеливании вашего запроса с Cloud Dataflow.Соединитель для Dataflow для чтения из Cloud Datastore существует как для python, так и для java.Список встроенных соединителей: https://beam.apache.org/documentation/io/built-in/.

2) Ответы уже должны быть сжаты, если ваш запрос содержит «Accept-Encoding: gzip».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...