BI-具有不兼容纹理的事实表设计

收藏

我对BI设计数据库很陌生,在某些方面我不太了解。 我正在尝试导入法国人口普查数据,我在其中获取每个城市的人口。对于每个城市,我都有不同年龄段的人口,它们之间并没有真正的联系。

例如,假设一种分类是00到20岁,21到59和60+ 另一种是更精确的方法:00到02、03到05等,但是范围永远不会与第一个分类相同:例如,我没有15到20,而是18到22。

因此,这两个分类是不兼容的。如何在事实表中使用它们?我应该使用2个事实表和2个多维数据集吗?我应该使用一个事实表,为1个多维数据集使用2个维度吗?但是在这种情况下,当我汇总一个城市的总人口时,我将有双重计算的事实,不是吗?

这是国家人口普查数据和国家分类,因此不能更改或估计人口以混合这些分类。需要明确的是,一行与一个人无关,而是与一个城市有关。我的事实不是个人,而是城市人口。 所以这个表就像: 第1行:一个城市-一定数量的人口-一个针对这个年龄段的昏暗年龄(例如00到19岁)的代码-该年龄段的昏暗性别的代码(m / f)-人口普查日期 第2行:同一城市-一定数量的人口-一种针对这个人口的昏暗年龄(例如20至34岁)的代码-昏暗性别的代码(m / f)-人口普查日期 因此,很多城市,无论是性别还是多年的城市都适用。 相同

我希望这个问题很清楚,因为英语不是我的母语,并且我在DB和BI领域还很新!

感谢您的帮助。

回复
  • 萌呆猪 回复

    使用单个事实表和年龄范围的两个维度的一种可能的解决方案:

    1-基于最广泛的人口普查的分类范围,例如:

    • 0-20岁的年轻人
    • 成人21-59
    • 高级60岁以上

    然后,您可以将其他人口普查与该维度关联起来并带有近似值,例如18-22可以是Young。

    2-原始年龄范围。当您报告单个城市时,此维度可以用于精确的年龄范围,也可以帮助您评估重叠边界的影响(例如,年轻/ 18-22岁的年龄段有多少行?)

  • killo 回复

    您可以如下创建一个尺寸

    1-20岁 成人21-59 60岁以上

    分类是 青年城市1:1-20 青年城市2:4-23

     id  field1   field2         field3          field4  .......
    
     1   1 year   young_city_1   other           .......
     2   2 year   young_city_1   other           .......
     3   3 year   young_city_1   other           .......
     4   4 year   young_city_1   young_city_2    .......
    

    现在您可以从任何项目和任何部门报告

    希望对您有帮助