天蓝色表中的N到N关系建模

时间:2014-05-20 14:48:40

标签: azure azure-table-storage denormalization nosql

我与模型有订阅关系...用户可以订阅N个订阅源,每个订阅源都有N个订阅者...用户点击"我的订阅源"将是一个常见的场景,并且Feed会向他的用户提供一个更常见的场景......

我的问题是:我应该如何将这个图存储在azure表中,以便在两个场景中获得良好的查询性能?

1 个答案:

答案 0 :(得分:1)

根据您的情况,我希望有两个表,一个用于用户和他/她的Feed,另一个用于Feed和订阅的用户。 JSON格式如下所示:

用户表中的用户实体

{
  Partition Key: User ID,
  Row Key: Guid.NewGuid(),
  ...
}

用户表中的UserFeed实体

{
  Partition Key: User ID,
  Row Key: Feed ID
  ...
}

Feed表中的Feed实体

{
  Partition Key: Feed ID
  Row Key: Giud.NewGuid(),
  ...
}

Feed表中的FeedSubsciber实体

{
  Partition Key: Feed ID,
  Row Key: User ID,
  ...
}