В настоящее время я использую DynamoDb для хранения JSON объекта, затем, когда происходит обновление объекта, сравните его с тем, что находится в DynamoDB, затем обновите то, что находится в DDB, и верните старую и новую версию как различия.
Я столкнулся с проблемой, когда объект был слишком большим для DDB, поэтому я смотрю на необходимость сохранить его в S3 и, возможно, сохранить путь к файлу в DDB, а когда я делаю diff, потяните файл вниз и сравните его с тем, что у меня есть, и отправьте сравнение. Потом я задумался о том, что у S3 есть версии, и я мог сравнивать версии, но меня больше всего беспокоит стоимость в масштабе. Я нашел статью, рассказывающую о том, что что-либо более 20К дешевле писать / получать доступ в S3, чем в DDB, но ниже, DDB дешевле. Большинство моих объектов 5-10K, так что, кажется, большую часть времени DDB дешевле. Но это также заставило меня задуматься, есть ли лучшее решение для проведения различий между тем, что у меня сейчас есть, и тем, что существовало? Мне не нужно, чтобы куча версий зависала, мне просто нужны текущие и предыдущие версии.