AWS Lambda / tmp на самом деле имеет только 512 МБ пространства и является отдельным ограничением от памяти функции.
Вероятно, вы достигли предела в 3 ГБ, потому что преобразовали структурув строку в памяти, что означает, что у вас есть 2 ГБ исходных данных, а затем 2 ГБ преобразования строки (ну, 1 ГБ, а затем ошибка)
Вы упомянули, что у вас есть:
лямбда-функция AWS (NodeJS), которая создает огромную структуру данных.
Однако обычно при работе с большими данными подход состоит в разделении рабочей нагрузки между несколькими лямбдами, никогда не загружая еев одну лямбду, поскольку это идет вразрез с дизайном лямбд (пределы памяти являются четким указанием).
Так что, если это возможно, я бы рекомендовал разделить рабочую нагрузку между несколькими лямбдами, но если это невозможно при вашем использованииВ этом случае вы можете взглянуть на AWS EC2 или на более простую работу с AWS Fargate , и в этом случае вы не столкнетесь с какой-либоиз ограничений, которые у вас есть с лямбда.