Вот идея:
Не создавайте резервную копию для всей коллекции, но для изменений (дельта) и сохраняйте изменения, произошедшие со временем. Позже вы сможете реализовать механизм восстановления, который будет проходить через дельта-файлы.
Вот как выглядит реализация как концепция, но только для запрошенного вами механизма резервного копирования:
![enter image description here](https://i.stack.imgur.com/mPvwx.jpg)
Здесь является посвященным репо для этого. Я также добавил сценарий командной строки Azure, чтобы помочь вам быстро воспроизвести мою идею в вашем клиенте Azure.
Общее описание:
- Зависимости:
azure-storage, unix-timestamp, documentdb
- У меня есть функция, запускаемая по времени. Частота создает капли, названные отметкой даты и времени.
- Я храню последнее время импорта в таблице хранения.
- Для получения дельты я использую поле
_ts
любого документа в CosmosDb.
Преимущества этого подхода:
- delta-s легче и быстрее импортируются / резервируются
- Вы можете установить частоту генерации дельты
- при восстановлении вы можете видеть базу данных в разных состояниях
Недостатки:
- у вас нет одного файла для восстановления, но многие