来自关系世界的情况显然与 Azure 表存储大不相同。我遇到的第一件大事是如何正确存储多对多关系。
例如,我可能有一个系统来跟踪他们拥有的用户和书籍。我在这里找到了另一篇关于 SO 的帖子,该帖子建议在用户上拥有一个字符串属性,该属性基本上存储了用户拥有的图书 ID 的列表。虽然我知道有时这是一种公认的数据存储方式,但问题是 Azure 仅允许您将 64KB 的数据存储在字符串中。这无疑限制了用户可能拥有的图书数量。
另一种可能的解决方案是重复数据。我可能有一个存储系统中所有已知书籍的表。但是当用户需要与一本书关联时,我将图书数据复制到另一个名为 OwnedBooks 的表中,该表与 Book 表基本完全相同,只是它也具有 OwnedByUserID 属性。
还有其他可能的解决方案吗?
除了这个问题,在使用 Azure 表存储时,是否有人对其他模式和实践有什么好的建议?