如何在firebase中建模多个1对n关系?

如何在firebase中建模多个1对n关系?,firebase,data-modeling,modeling,Firebase,Data Modeling,Modeling,我从Parse来到Firebase,希望实现一个具有非平凡的1对n关系的项目,如下所示: 实体--1对n-->人 个人--1对n-->学分 债权人--1:n-->贷方 数据写入和读取-添加以澄清 人员和相关信用将同时创建 每个人都可以阅读/更新自己的信用卡几次 然后它将被债权人阅读:我将运行查询以收集任何给定债权人的所有信用 查看Firebase的文档,我会说我必须使用下面的关系,但不知道我的想法是否正确 { "entities": { "entityA": { "

我从Parse来到Firebase,希望实现一个具有非平凡的1对n关系的项目,如下所示:

  • 实体--1对n-->人
  • 个人--1对n-->学分
  • 债权人--1:n-->贷方
数据写入和读取-添加以澄清

人员和相关信用将同时创建

每个人都可以阅读/更新自己的信用卡几次

然后它将被债权人阅读:我将运行查询以收集任何给定债权人的所有信用

查看Firebase的文档,我会说我必须使用下面的关系,但不知道我的想法是否正确

{
  "entities": {
    "entityA": {
      "name": "...",
      "persons": {
        "personA": true,
        "personB": true,
        "...": true
      }
    },
    "entityB": {
      "name": "...",
      /* ... */
    }
  },
  "persons": {
    "personA": {
      "name": "...",
      "entity": "entityA",
      "credits": {
        "creditA0": true,
        "creditA1": true,
      }
    },
    "personB": {
      "name": "...",
      /* ... */
    }
  },
  "credits": {
    "creditA0": {
      "amount": "2000,00",
      /* ... */
      "institution": "institutionA"
    },
    "creditA1": {
      "amount": "5000,00",
      /* ... */,
      "institution": "institutionB"
    }
  },
  "institutions": {
    "institutionA": {
      "name": "...",
      "credits": {
        "creditA0": true
      }
    },
    "institutionB": {
      "name": "...",
      "credits": {
        "creditA1": true
      }
    }
  }
}

在NoSQL中,您经常根据应用程序使用数据的方式对数据进行建模。有关此模式和更多模式,请参阅上的这篇文章。这意味着,除非显示要运行的查询,否则无法判断您的建模是否“正确”。@FrankvanPuffelen添加了详细信息以澄清数据写入和读取