Как заставить Trino (Presto) быстрее получать большой объем данных из MongoDB?
Я хотел бы задать вопрос об использовании Trino 351 для группировки данных из MongoDB 4.0:
Я протестировал с Trino CLI, чтобы сгруппировать 730000 записей из MongoDB в результат агрегирования.
Результат правильный, но есть проблема: получение данных занимает слишком много времени.
Я не устанавливал mongodb.cursor-batch-size вначале, поэтому Трино извлекал данные о 25000 записей на запрос getmore.
Если я настрою значение mongodb.cursor-batch-size, я могу уменьшить время передачи данных с 70 до 38 секунд.
Если я просто выполняю агрегированный запрос MongoDB с конвейерами, подобными моему запросу Trino SQL, на повторный запуск окончательного результата уходит 2 секунды.
Поскольку я вижу, что проблема, которую мне нужно решить, состоит в том, чтобы как можно быстрее получать данные с первого взгляда, я думаю, даже если я подниму ядра процессора и память для Trino, это мне совсем не поможет.
Какие-нибудь советы, ребята?
Спасибо.:)
PS.
Я запускаю Presto с помощью Docker-compose с изображением офиса с тегом 351 в Docker Hub,
почти со всеми настройками по умолчанию;
и я запускаю MongoDB 4.0 на том же компьютере с Windows 10 с настройками по умолчанию,
поэтому в моем случае не должно быть помех сети.