В моем случае использования у меня есть пользователь, который загружает CSV-файл с 60k строк, каждая строка предпочтительно является записью в DynamoDb.
Пользователь имеет возможность загружать файл в любое время. Когда он загружает новый файл, старые данные должны быть удалены и заменены. В базе данных SQL вы должны:
- открыть транзакцию
- removeAllFromDb ()
- сохранить () каждую запись в базе данных
- транзакция закрытия / отката
Данные, которые я храню, действительно соответствуют хранилищу объектов, связи отсутствуют. Плюс экономическая эффективность DynamoDb приносит Aurora.
Поскольку пакетные операции DynamoDb могут обрабатывать только 25 объектов на один запрос, и важно сохранить старые данные, если по какой-то причине новый файл не может быть полностью обработан.
Есть ли чистый способ добиться этого с DynamoDb?