0

我对 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 中还很陌生!

谢谢你帮助我。

4

2 回答 2

0

您可以按以下方式创建一维

年轻 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    .......

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

我希望它对你有帮助

于 2019-05-28T04:18:04.380 回答
0

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

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

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

然后,您可以使用近似值将其他人口普查与该维度联系起来,例如 18-22 可能是 Young。

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

于 2019-05-24T16:06:47.107 回答