首页 > 解决方案 > 数据仓库中的维表命名

问题描述

我对数据仓库中维度表的命名约定有疑问。我想知道在名称中保留维度类型是个好主意。例如对于维度类型 1,我们将有如下内容:

  1. dim_scd1_student (它是渐变维度类型 1)
  2. dim_scd2_teacher (它是渐变维度类型 2)

标签: databasedata-warehouse

解决方案


没有

Ralph Kimball 博士和 Christopher Adamson 都没有在他们的书中使用这个约定。两位作者都建议在 ETL 过程中记录和管理此细节。

最终用户(例如经理和业务分析师)将与表名和列名进行交互。他们中的佼佼者将知道如何构建简单的 SQL 查询来获得他们寻求的业务答案。但缓慢变化的维度是实现细节,与它们无关。列名“dim_scd2_...”只会造成混乱、问题和噪音。请记住,这个系统是为商务人士设计的,而不是软件工程师。

另外,我会省略“dim”前缀。业务测量或事件表应以“fact”或“facts”作为后缀(Kimball 和 Adamson 都使用)。默认情况下,所有其他表格都是维度。

另外:按照您的建议进行操作类似于将存储类型嵌入到编程语言变量名中。例如,在 C 程序中,“int”类型可以按如下方式使用:int_customer_id. 但是如果将来“int”不够大而我们需要使用“long”怎么办?哎呀。


推荐阅读