问题:
我尝试为Azure Cosmos DB构建备份解决方案,以便在我们以编程方式破坏数据库中的数据时定期向我们提供数据库转储。问题是Azure Germany尚未存在Data Factory,我们不能依赖Azure的自动备份(仅8小时可用)。我不想在云之外使用任何额外的应用程序。
到目前为止我发现了什么:
https://www.npmjs.com/package/mongo-dump-stream
Mongo Dump Stream应该能够连接到我们的数据库并从中读取。
我的想法是在Azure Functions中使用此npm,并将转储结果发送到blob存储。
我的问题:
如何将结果发送到blob存储?
你能举一个具体实施的例子吗?
这是一个想法:
不要为整个集合创建备份,而是为更改(delta)创建备份,并保存随时间发生的更改。稍后您可以实现将遍历增量文件的还原机制。
以下是实现看起来像一个概念,但仅适用于您请求的备份机制:
Here是专门的回购。我还添加了Azure CLI脚本,以帮助您在Azure租户中快速重现我的想法。
一般说明:
azure-storage, unix-timestamp, documentdb
_ts
字段。这种方法的好处:
缺点: