漫谈大数据和数据仓库

1,879 阅读4分钟
原文链接: www.mdjs.info

0x00 前言

学的越深越能体会到自己的无知,理解的越深刻越不敢张口说自己是搞这一行的。

把之前写的数据仓库系列博客,汇总和整理成了一本更系统的小书《Data Warehouse in Action》。

0x01 大数据和数据仓库

16 年开始接触数据仓库,至今有一年半的时间,中间换了次工作,也算是在两家公司实践了数据仓库。在此随便写一点关于大数据和数据仓库的东西。

其实,很多时候大数据和数据仓库这些都是一些概念使然,个人不太认为某一个概念比另一个概念厉害多少,大家是你中有我我中有你的关系。

就拿大数据来讲,13年的时候我们会讲,大数据包括了数据清洗、数据存储、数据仓库、数据挖掘、数据分析、数据可视化等一系列的概念。再看数据仓库的概念,随便找本十多年前的经典书籍就会发现,数据仓库包含了 ETL、元数据、数据血缘管理、调度系统、数据可视化等概念。

那么谁更大?谁更厉害?这个其实不是我们的重点,这些东西最终还是要落在具体的工作和技术上。

比如说我是搞大数据开发中的数据收集、数据清洗工作,换一个名字我就可以说自己是搞 ETL 开发的;然后我再了解一些数据仓库建模的内容,将自己的数据清洗的工作套上数据仓库中的模型设计和数据分层,我就可以说自己是搞数据仓库的。

再比如说我之前是搞数据仓库的元数据系统、血统分析、调度系统的,然后同样的理论模型,使用场景从 Oracle、Mysql这些关系型数据库转移到 HDFS、Hive、Spark 中,我就变成了大数据开发中的系统开发了。

其实很多工作内容和工作性质都很相近,自己灵活一点就好。

0x02 数据仓库

数据仓库的内容很多,这里主要对数据仓库的体系做一个小的说明,算是这系列博客的总览。

我们粗略地从数据仓库中抽取几个主题来聊:ETL、数据模型、元数据管理。

其中 ETL 的内容和现在大数据的体系绑定最深。MapReduce、Spark 这些计算引擎都可以算是 ETL 的重要组成部分。

数据模型的话,我们把维度建模、数据分层、各种表结构设计放在其中。这一块算是数据仓库中最重要的一块。

元数据,我们可以理解为数据的管理。

针对上面三个主题,本系列文章有下面内容:

  • 数据仓库中的模型设计
  • 详解唯独建模
  • 拉链表是什么
  • 缓慢变化维度
  • 如何优雅地设计数据分层
  • 别人家的元数据系统是怎么设计的
  • 数据质量监控
  • 聊一聊ETL的设计
  • 重要的代理键
  • 时间维表的实践

0xFF 总结

从工作内容上来讲,我们会把数据分为数据开发、数据分析、数据仓库、数据挖掘的话。 很多人觉得高大上的是数据挖掘,觉得工程最强的是数据开发。

换一个角度,我们从数据的角度来讲的,我们会把数据分为:数据计算、数据价值和数据管理。我们很多是以数据价值为导向地来做数据计算,但是往往会忽略数据管理,而数据仓库的理念恰恰是数据管理。因此可以在适当的业务阶段来重视数据管理。

其实写点博客,本来也就没什么利益可图,自己写了算是一个总结,因此有不严谨有胡扯。互相能有收获就是最好的结果。

木东居士 wechat 欢迎关注我的微信公众号! 坚持原创技术分享,您的支持将鼓励我继续创作! 打赏 木东居士 微信支付

微信支付