我有一个Azure存储拓扑,其中包含多个镜像节点,但可以使用不同的数据,具体取决于哪个区域的用户使用哪个容器节点。
我的要求是将3个节点表同步到主节点表中。例如,如果表是Users,则三个节点(节点A,节点B,节点C)将使用三个节点的并集结果填充主User表,忽略重复并删除不再引用的行。
“Big Hammer”方法(如果我在SQL中执行此操作)将从主表中获取用户列表,3个节点列表,将节点组合到新集合中,将该集合与主集合并执行数据的合并/并集,最后将新的合并和截断集合推送到该主节点。
我的问题是:
我认为如果azure没有机制来帮助支持这个功能,那么azure可以从混合中取出,这就变成了一个纯粹的C#List Manipulation问题。
非常感谢。
答案 0 :(得分:1)
1)不,但在幕后,Microsoft会对您的azure表进行地理复制/本地复制,最多再复制5次(总共6份)..他们可能会为此发布一个明确的API 2)取决于你的数据大小/工作频率...记住你得到每个/交易的费用..如果你开始每4小时做数十亿行,那么这将开始花费很多钱 3)我会在worker角色上执行此操作,因此数据不必离开MS数据中心,这样可以提高性能。在工作者角色中,它也可以“安排”以特定间隔运行
Azure表存储对此并不是一个很好的解决方案。数据库之间的SQL数据库中提供了跨持久存储的同步。虽然,提取数据并以原子方式处理所有这些操作不是Azure特定问题,但这很重要。