Skip to content

Latest commit

 

History

History
32 lines (19 loc) · 3.75 KB

数据模型如何评论好坏.md

File metadata and controls

32 lines (19 loc) · 3.75 KB

数据模型的选择

最常提到的有这五种,范式,维度,E-R,DataVault,Anchor。关系数据库中范式很流行,大数据中维度模型很普遍,E-R模型在金融圈很常见,另外两种“只闻其名,不见其人”了。

如果讨论这五种方法在设计思路的好坏,那么肯定各有千秋。但如果问,数仓建模哪种模型最成熟,恐怕范式和维度就胜出了,而在大数据领域似乎只能选择维度建模,因为实践经验最多,也最成熟。

这就有点像软件或者框架的比较,Hadoop就一定完美吗?java性能就一定由于python吗?并不是。但是Hadoop市场普及率最高,java岗招聘人数最多。因为生态建立起来了,用的人多了,方法论成熟了,就好用了。

数据架构的评价标准

数据架构,严格意义上,也是一个系统,只不过是“数据系统”。因此,能用在系统上的标准,如响应速度、可复用性、稳定性、健壮性等,也可以用在数据架构的评价上。但与应用类系统不同的是,数据系统面向的是决策,而不是需求,因此响应速度可复用性就强调的更多一点。

  • 响应速度:数据架构的主要场景包括:业务开发、数据产品、运营分析三大类,不论是那种场景,数据架构均应该在尽可能短的时间内响应需求;
  • 可复用性:只有复用能力上来了,响应速度才能提上来,体现在下游依赖、调用次数、核心字段覆盖率等指标上;
  • 稳定性:除了日常任务不出问题以外,一旦发现了问题,能在多短的时间内定位和恢复问题,就非常重要;
  • 健壮性:除了电商等已经耕耘多年的领域外,绝大多数业务模型,都会快速的变化,如何适应这种变化,就非常考验架构功底。

数据模型的评价标准

数据模型建设的怎么样,极度依赖规范,如果设计风格是“千人前面”,那么恐怕半年下来,业务系统就没法看了。没有什么比“数据系统”更看重“法制”了,规范体系不仅能保障数据建设的一致性,也能够应对业务交接的情况,更能够为自动化奠定基础。

  • 业务过程清晰:ODS就是原始信息,不修改;DWD面向基础业务过程;DIM描述维度信息;DWS针对最小场景做指标计算;ADS也要分层,面向跨域的建设,和面向应用的建设;
  • 指标可理解:按照一定业务事务过程进行业务划分,明细层粒度明确、历史数据可获取,汇总层维度和指标同名同义,能客观反映业务不同角度下的量化程度;
  • 核心模型相对稳定:如果业务过程运行的比较久,过程相对固定,就要尽快下沉到公共层,形成可复用的核心模型;
  • 高内聚低耦合:各主题内数据模型要业务高内聚,避免在一个模型耦合其他业务的指标,造成该模型主题不清晰和性价比低。

持续建设的先进性

即便是维度模型,在业务高速发展的今天,也难以适应所有的引用场景。例如面向物流、面向财务、面向企业,数据解决方案的争论,一直没有停息过。维度模型虽然在过去是先进性的代表,拥有大量成熟的实践方法论和响应的工具,但是其核心思想:数据域,业务过程,粒度,维度,度量,事实等,随着业务复杂度的进一步提高,实际的模型设计过程已经在逐渐淡化这些数仓概念,大宽表、冗余所代表的的好用思想,也逐渐成为主要的设计思路。

所以不光要有方法论的支撑,由先进技术体系支撑的系统产品,也应该被逐步的建立起来,甚至是在云计算普遍成熟之后,下一代的核心产品。