需要有关嵌套集数据库设计的建议

时间:2017-08-29 15:19:23

标签: mysql database-design nested-sets

我想开发一个KPI系统,但在数据库设计上遇到一些麻烦

在开始之前,请先告诉我业务要求:

  1. 家长可以获得所有子KPI。例如,从下面的图片(策略层次),我可以获得策略1(KPI项目ABC和项目X)下的所有KPI
  2. 项目分配在一个单元下。例如,项目ABC在软件开发单元下分配。
  3. 对于组织层次结构,我也可以在父级下获得KPI,例如在Sofware Dev单元下获取所有KPI(项目ABC的KPI)
  4. 我对数据库设计的想法:

    1. 由于组织层次结构和战略层次结构是基于层次结构的,我想使用嵌套集模型将hieraychy存储在数据库中。

    2. 嵌套集模型允许轻松查询父项下的所有KPI。例如,根据策略1,获取ICT行业下的MYCOMPANY Enterprise下的所有KPI,依此类推。

    3. 所以我将创建2个单独的表,一个用于存储组织层次结构的表,以及一个用于存储策略层次结构的表

    4. 问题是:

      1. 我是否为KPI创建一个单独的表?

      2. 由于有两个单独的表,并且KPI只插入一次,如何在保持两个表的树/嵌套集模型的同时,如何将KPI数据与组织层次结构和策略层次结构链接/共享? / p>

      3. 提前致谢

        enter image description here

0 个答案:

没有答案