Как организовать парралельные вычисления на Node и AWS?



@andreys75

Добрый день.
Как организовать парралельную обработу больших объемов данных на Node?

Чтобы ьыть более конкретным представим что у меня есть несколько десятков файлов по несколько ГБ каждый. В файлах находится массив данных. Есть задача посчитать общую статистику по уникальным значениям.

1. Надо прочитать каждый файл
2 Посчитать статистику по каждому файлу
3. Объединить результаты в одну статистику

Сейчас все это делается последовательной обработкой каждого файла на стороне клиента. В отдельном сервис воркере(одном). Хочется как то организовать это параллельными вычислениями.
Как это можно распараллелить на стороне клиента понятно, но проводили небольшие тесты и парралельное (в разных воркерах) чтение файлов из CacheAPI где мы храним загруженные с сервера большие массивы данных дают худшие результаты чем последовательное чтение в одном воркере.

Проэтому думаем как передать эти вычисления на сторону сервера.
Чем лучше всего воспользоваться из арсенала AWS?
Думаем в сторону AWS Lambda но примеров подобного использования я не нашел.

На сервере файлы находятся на S3

Буду благодарен за любые подсказки.


Решения вопроса 0


Ответы на вопрос 2



@Viji

а почему не использовать Lambda с boto3 python? Там больше примеров…

У меня была длинная задача на Лямбде, я записывал проемеж значения в sqs queue и доставал во время след запуска Лямбды. Также можно использовать step functions

https://aws.amazon.com/ru/step-functions/?nc1=h_ls…



@jenki

Как организовать парралельную обработу больших объемов данных на Node?

Это больше вопрос к Node чем к амазон. На сколько понимаю, там вроде как есть параллельная обработка данных, но вроде как многопоточности на уровне языка нет.

AWS Lambda поддерживает js, пробуйте.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *