建仓时,如何评估数据模型建的好不好?

简介: 建仓时,如何评估数据模型建的好不好?

建模的流派

嗯,这里不是要说immon和kimball的流派,因为他俩的建模思想是一致的,都是维度建模。一般来说,建模有几大类:

1、关系模型(范式建模

2、维度建模(星型、雪花型)

3、宽表建模(世上本无宽表,互联网搞得多了,也就有了宽表模型)

关系模型一般在业务系统用的比较多,维度建模在数仓里用的比较多。这个不绝对。


但是现在很多互联网公司因为业务变化太快,导致常规的维度建模不适用了,实在是没办法,只能拖宽表应对产品经理疯狂的催促。


你看,这三种流派,各自成体系,可不能用统一的方法来评价。


比如宽表,拿啥标准都不行啊~~~都挤成一张饼了。


拿维度建模的标准去评判关系模型,也不行啊,它们各有各的目的,要不整两个流派干啥?而且,在主题域模型、概念模型、逻辑模型不同层面,其评判标准也不一样。所以不好说啊。


模型的好坏

怎么才能算是一个好模型?这得说到数仓建设的核心奥义:解耦。数仓分层也是因为要解耦。以前的数据处理逻辑都写在一起,一个巨大无比的存储过程。


相互之间还不断调用,加上数据的复杂程度,简直难以理解。看懂一个存储过程都要消耗几百亿个脑细胞。所以,稍微有些架构思维的人都会把程序不断的拆解,不仅在数据领域是这样,在整个软件工程都是这样。高内聚,低耦合。在模型这边更是这样。一个优秀的模型,应该具有以下特性:1、稳定性:其实就是低耦合设计带来的特性。一个优秀的模型应该能够支撑上层不断更新的业务需求。2、可复用:避免与业务绑定过死,导致模型的个性化。比如宽表,可复用性极差。不过这也不绝对,在业务频繁变化的场景,只能选宽表。3、业务支持:数据是业务的投影。数据模型是业务的成像原理。因此建模时必须与业务贴合。这一条看上去与上一条冲突,其实不然。区别在于支持和完全一致。如同照片和影子的区别:影子可以随着地形的变化而变化,而照片与实体保持高度一致。4、通用性:一个优秀的模型应该是合理抽象的,因此能够在不同企业的类似场景中通用。比如FSLDM,一个模型吃了几十年了(虽然有更新)。5、友好:一个优秀的模型应该对数据建模师友好。如果在业内人员眼里都很怪异,那么肯定不能算是好模型。6、干净:一个优秀的建模师干的活儿如同陕西媳妇揉面一样,三光:手光、面光、盆光。标准统一、规规矩矩,干干净净、一板一眼,顾名思义、不用瞎猜。一个字:合理。


评价

这个评估模型还是很粗糙的,其实可以再细化一些,弄给一个评分表,各自对自己的模型进行打分。比如最后一个干净,就是卷面分,稳定、复用就是技术分啥的。最好是让别人给自己的打分,然后就知道自己的模型建的咋样了。好了,今天就分享到这里,明天再见。

相关文章
|
数据采集 SQL 运维
巧用指标平台DataIndex,五步法轻松实现指标管理
在业务发展初期,企业需要做好规范的指标管理,以保证随着业务的不断发展,数据化决策能够成为业务强有力的支撑。本文将为大家详解如何通过袋鼠云指标管理平台DataIndex 进行规范化的指标开发管理,轻松开发指标,避免各类指标问题。
890 0
|
6月前
|
数据可视化 大数据 数据处理
如何评估一个数据可视化工具的优劣?
【5月更文挑战第18天】如何评估一个数据可视化工具的优劣?
52 6
|
算法 搜索推荐 UED
文档关联规则挖掘算法:提升文档管理软件效率的新途径
使用文档关联规则挖掘算法来提高文档管理软件的管理效率可是一个非常棒的办法,就像熟练的园丁在整理花园一样,轻松为用户梳理海量文档。这种算法犹如一把神奇的法宝,能够揭示文档之间的奇妙关系和潜在模式,使文档分类、检索和推荐如丝般顺滑,就像天然的流水一般。接下来,就让我们来探讨一下如何通过文档关联规则挖掘算法提高文档管理软件的管理效率吧——
238 0
|
数据采集 监控 数据管理
数据质量最佳实践(5):利用质量分和排行榜提升企业数据质量【Dataphin V3.12】
在数据质量最佳实践(3):通过质量治理工作台,实现质量问题的跟踪和处理这篇文章中,我们详细的介绍了如何通过治理工作台,对系统出现的一个一个具体质量问题进行治理。 但是对于企业整体的数据质量情况,我们该如何评估呢?以及如何寻找当前企业的数据质量短板,并有针对性的进行改进和提升呢? 在Dataphin V3.12版本中,质量新增了质量分的能力,可以给数据表和质量规则配置打分权重和打分方式,从而获得全局、数据源、项目、负责人、数据表等维度的质量打分评估,帮助CDO判断企业整体的数据质量情况和数据质量问题的分布,从而有针对性的提升企业整体的数据质量水平。
748 1
|
存储 SQL 数据挖掘
数据仓库-维度建模不是万金油
写在前面:最近有些抵触写东西,总感觉自己没有清晰的表达思路和专业的知识体系,写的东西都是更偏向个人经验的一家之谈;之前总想着把文章结构做好,图片做好,表达做好,这样能更容易让大家理解,可以让更多的人接受所要表达的观点;但是,这样写太痛苦了,似乎是为了达到某种结果而刻意为之。。。最终还是回归表达的本质,传播思路和想法,把这个说清楚就可以了,不管是三言两语还是长篇大论,让看到的人能知道有这么一种观点和
140 0
|
存储 监控 搜索推荐
数据挖掘-模型怎么解决业务需求(五)
数据挖掘-模型怎么解决业务需求(五)
191 0
数据挖掘-模型怎么解决业务需求(五)
|
存储 分布式计算 监控
OushuDB 小课堂丨描述性分析如何利用数据做出更好的决策
OushuDB 小课堂丨描述性分析如何利用数据做出更好的决策
116 0
|
机器学习/深度学习 数据采集 自然语言处理
全自动化数据洞察!数据分布对比可视化!⛵
本文介绍如何使用 Pandas Profiling 的比较报告功能,分析两个数据集的分布差异,完成数据探索分析 (EDA) 的完整流程,为后续分析做准备。
305 0
全自动化数据洞察!数据分布对比可视化!⛵
|
SQL XML JSON
多样性数据源报表如何做?
现代应用已经进入多数据源阶段了,不再是一个单一的数据库包打天下,一个应用中会涉及除关系数据库外各种数据源,如文本文件类数据、NOSQL、多维数据库、HTML Webservice等等,即使是关系数据库,也不止一个。 与之对应的,应用中的报表自然也会涉及到多样性的数据源了 现在的报表,基本都是用报表工具来做,很多报表工具都号称支持多数据源,是不是能解决这个问题呢? 实际上并不能,他们只能搞定一点点
218 0
多样性数据源报表如何做?