Service Fabric 备份,分区 ID

Service fabric backup, partition ID

如果我有一个分为三个分区的有状态服务结构并且想要备份到外部源,我可以将服务的分区 ID 合并到包含备份的外部源的文件夹名称中。当需要恢复时,服务实例可以将它的分区 ID 传递给备份提供程序,从而提取该特定分区的数据。

我担心的是,如果发生灾难性故障并且需要重建服务结构,分区将不再具有相同的分区 ID(它似乎是一个 Guid),在这种情况下,恢复过程将找不到新分区 ID 的备份。

推荐的处理方法是什么?

我当前使用分区键而不是 PartitionID,这样可以吗?

是的,这很有道理,您正在这样做 right。您可以从一个分区进行备份,然后在另一服务的不同分区上恢复它。 目标服务必须使用相同的分区计数和类型。

通过这种方式,您还可以使用备份和还原来制作现有服务的副本,例如用于调试目的。

来自 this 项目的代码可以帮助您创建和恢复 SF 备份,并帮助您将数据存储在外部存储中。