Экспорт данных через API из s3 с использованием лямбды - PullRequest
0 голосов
/ 21 июня 2019

У меня есть некоторые данные, хранящиеся в динамо-базе, и несколько изображений высокого разрешения каждого пользователя, хранящиеся в S3 Требуется иметь возможность экспортировать данные пользователей по требованию. Поэтому с помощью конечной точки API сопоставьте все данные и отправьте их в ответ. Мы используем aws lambda, используя node.js для бизнес-логики, s3 для хранения изображений и sql db для хранения реляционных данных

Я настроил механизм подключения шлюза API для получения запросов и поместил их в sqs. Sqs запускает лямбду, которая запускает запросы для сбора всех данных и путей к изображениям. Мы скопировали бы все изображения и данные в новое ведро с custId в качестве имени папки. Теперь вот где я застрял. Как передавать эти данные из нашей новой корзины AWS. Все собранные данные около 4 ГБ. Я пытался транслировать через aws-lambda, но продолжаю терпеть неудачу. Я могу передавать потоковые файлы, но не все данные в формате zip. HV сделал это в узле, но не хотел бы устанавливать EC2 и попытаться решить его напрямую с помощью s3 и lambdas

Кажется, что CAnt находит способ передать целую папку из aws клиенту в ответ на запрос http

1 Ответ

0 голосов
/ 23 июня 2019

Хорошо, нашел ответ. Вместо того, чтобы пытаться вернуть zip-поток, я теперь просто заархивирую и сохраню папку в корзине и верну ей подписанный URL. Множество узловых модулей помогают нам архивировать папки s3 без загрузки целых файлов в память. Используя это, мы заархивировали нашу папку и вернули подписанный URL. Как это будет вести себя при реальной нагрузке, еще неизвестно. Скоро это сделаю

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