gpt4 book ai didi

Azure表存储设计问题: Is it a good idea to use 1 table to store multiple types?

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

我只是想知道是否有任何有 Azure 表存储经验的人可以评论一下使用 1 个表来存储多种类型是否是一个好主意?

我想这样做的原因是这样我可以进行交易。不过,我也想从开发的角度了解一下,这种方法操作起来容易还是麻烦?到目前为止,我正在使用 Azure 存储资源管理器来协助开发,并且在一个表中查看多种类型一直很困惑。

举个例子,假设我正在设计一个博客社区网站,如果我将所有博客文章、类别、评论存储在一张表中,我会遇到什么问题?另一方面,如果我不这样做,那么我如何确保类别和帖子的一致性(假设 1 个帖子可以有一个 1 类别)?

或者人们是否有其他不同的方法来使用表存储来解决这个问题?

谢谢。

最佳答案

如果您的目标是实现完美的一致性,那么使用单个表是实现此目标的好方法。然而,我认为你可能会让事情变得更加困难,并且得到的返回很少。我之所以这样说,是因为表存储极其可靠。如果您正在处理非常非常重要的数据,那么事务就很棒,但在大多数情况下,例如博客,我认为您最好只 1) 允许极小比例的不一致数据和 2) 处理失败以更手动的方式。

在同一个表中存储多种类型时遇到的最大问题是序列化。当前大多数表存储 SDK 和实用程序都旨在处理单一类型。话虽如此,您当然可以手动处理多个模式(即将对象反序列化为包含所有可能属性的主对象)或直接与 REST 服务交互(即不通过 Azure SDK)。如果直接使用 REST 服务,则必须自己处理序列化,从而可以更有效地处理多种类型,但代价是您需要手动执行通常由 Azure SDK 处理的所有操作。

这样做确实没有正确或错误的方法。两种情况都可以,只是哪种最实用而已。我个人倾向于为每个表放置一个模式,除非有充分的理由不这样做。我想您会发现表存储在不使用事务的情况下也足够可靠。

您可能想查看Windows Azure Toolkit 。我们设计该工具包是为了简化一些更常见的 Azure 任务。

关于Azure表存储设计问题: Is it a good idea to use 1 table to store multiple types?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4515812/

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