gpt4 book ai didi

c# - 在 C# 中同步多个 Azure 表/容器 - 最佳实践是什么?

转载 作者:行者123 更新时间:2023-12-03 03:18:03 25 4
gpt4 key购买 nike

我有一个 Azure 存储拓扑,其中包含多个镜像节点,但可以有不同的数据,具体取决于哪个区域的用户使用哪个容器节点。

我的要求是将3个节点表同步到主节点表中。例如,如果表是“用户”,则三个节点(节点 A、节点 B、节点 C)将使用三个节点的并集结果填充主用户表,忽略重复项并删除不再引用的行。

“大锤”方法(如果我在 SQL 中执行此操作)是从主表中获取用户列表、3 个节点列表,将节点合并到一个新集合中,将该集合与主集合并执行数据的合并/联合,最后将新的合并和截断的集合推送到该主节点。

我的问题是:

  1. Azure 有内置的方法可以做到这一点吗?
  2. 按照我上面的描述在 C# 中执行此操作是一个好的做法吗?
  3. 可能会出现哪些类型的问题/风险以及应考虑哪些注意事项?
  4. 您能否提出一个更好的解决方案来解决这个问题?一些经过尝试且真实的东西(也许是一种设计模式?)
  5. 您能否提供用 C# 执行此操作的代码示例?

我认为,如果 azure 没有机制来帮助支持此功能,那么可以将 azure 排除在外,这将成为一个纯粹的 C# 列表操作问题。

非常感谢。

最佳答案

1) 不,但在幕后,Microsoft 会对您的 Azure 表进行异地复制/本地复制最多 5 次(总共 6 份)..他们可能会为此发布一个显式 API2) 取决于您的数据大小/作业频率...请记住,您将按每笔交易收取费用...如果您开始每 4 小时执行数十亿行,那么这将开始花费大量资金3) 我会在辅助角色上执行此操作,因此数据不必离开 MS 数据中心,这将提高性能。在 worker 角色中,它也可以被“安排”以特定的时间间隔运行

Azure 表存储并不是一个很好的解决方案。 SQL 数据库在数据库之间提供跨持久存储的同步。然而,提取数据并以原子方式处理所有这些操作并不是 Azure 特有的问题,这一点很重要。

关于c# - 在 C# 中同步多个 Azure 表/容器 - 最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19171198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com