为了防止数仓模型的混乱建设需要通过一些约定和规范进行建设。
建设要求
1.统一ods层的建设,一次数据只接入一次,防止重复接入,并进行命名规范,如ods_database_table,ods表明层级,databasese是对接数据库的数据库名,table是接入的业务表表名。
2.划分业务过程,构建主题域,构建总线矩阵。先构建业务主题域,如数据指标里面提过的视频、创作者、观看用户、流量、弹幕、评论等。然后再划分一些具体的业务过程,如将视频划分为点击视频、观看视频、收藏视频、转发视频等,然后再列举业务过程的可分析维度,比如用户类型,省份,流量来源等。
3.构建统一的维度属性。整合出一些维度属性表,比如视频就内容可以分为游戏、娱乐、知识、鬼畜、科技、生活等等。然后可以根据维度表的一些属性或者实际情况存储在不同的维度表中。维度表的命名一般为dim_topic_describe_partition,dim表明是维度表,topic表明维度表属于的主题域,describe是对维度表的描述,partition是分区规则,分区即可以按天、按周、按年增量存储,也可以每天、每周或每月保存全量数据,还可以是不定期更新的表。
4.整合事实表,根据主题域将事实表统计粒度一致的情况可以进行合并,后面层级的表不允许跨过dwd表直接通过ods表建立,无法通过现有的dwd表则需要建立新的。并且从dwd划分完主题域开始数仓命名的方式都应该为:层级主题子主题业务分区规则。
5.任务建立。任务依赖关系或者数据检查需要正确建立,防止出现前面需要的任务没跑完就进行后面的任务;同时任务名与表明一致方便排查;中间用到的临时表注意要删除;对表建立保存时间,一般ods和dwd全量保存,dwd进行压缩,其它的表要到期删除。
数仓模型建设的工具
数仓模型建设的工具需要依赖于元数据中心,通过数据血缘进行数仓模型的分析,包括跨层引用和复用率的指标。同时需要能管理模型的主题域、分层和业务过程以及维度表的相关管理。
通过这个工具可以反映数仓模型的整体情况和作为数据模型的字典。
网友评论