【发布时间】:2021-04-14 10:47:52
【问题描述】:
我正在构建一个关于人力资源数据的数据仓库模型,但无法自行决定包含员工技能演变的事实表:
我有一个 Employee 表和一个 Skill 表。每个员工都可以在不同级别(100、200、300)拥有多种技能(我希望他们有!)。
我需要保留每个组合 Employee/Skill/SkillLevel 的历史记录,以便他们可以分析自己随着时间的推移的演变。
1- 我在考虑一个事务性事实表,但每个员工每年只有几行,例如 James 在 1 月 8 日获得了 100 级的新技能,然后一行假设 3 个月后,技能水平为 200,依此类推...图形分析会显示许多空白空间(当没有任何新技能/技能水平时),或者我需要进行复杂的查询才能获得一些有趣的事情,比如如果我想知道某个员工在某个时间点的所有技能是什么?这个事实表在我看来使用起来很不自然......
2- 所以我正在考虑一个快照事实表,它可以帮助我轻松回答上一个问题。知道我需要每天存储每个员工技能的快照,以确保我不会丢失任何数据更改。它不是在一年中仅进行一些更改就构成了一张巨大的桌子吗?是否值得做一个快照以使分析更容易,而我会在较小的事务事实表中拥有相同的信息?
最好的方法是什么?
非常感谢您的建议!
照顾好自己
【问题讨论】:
标签: database database-design model relational-database modeling