前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >漫谈“数据仓库演进史”

漫谈“数据仓库演进史”

作者头像
用户5548425
发布2020-07-22 20:01:04
5420
发布2020-07-22 20:01:04
举报
文章被收录于专栏:韩锋频道韩锋频道

本文回顾了(数据/信息)仓库的发展历史,算是一个科普文。

1. 信息的起源

人类的发展,离不开信息的积累。从原始社会的口口相传,到需要将信息记录下来。那么如何记载信息呢?于是有了最早的记载方式——结绳记事。

这个方法貌似可以,但是复述起来,简直呜呜呜…有没有更好的方式了,古人创造出来文字。通过文字将发生的历史记载下来。从最早的甲骨文,到后面文字的不断发展。聪明的古人,不断演进发展着文字。可以说文字的演进历史,就是人类的进化历史。

2. 计算机的诞生

伴随着人类的进步,存储的信息越来越多,有没有更好的方式存储管理这些信息呢?终于到了1946年,因为军事的的需要,第一台电子计算机在美国宾夕法尼亚大学诞生了。虽然很久之前就有了计算尺、机械计算机、模拟电子计算机,但无疑电子计算机的问世具备了划时代的意义,并且一直影响到我们现在。这是个庞大而笨重的家伙,是我们现在这个计算机时代的老祖先。

3. 数据库的诞生

时间迈入了1960年代,野心勃勃的美国人提出了登月计划,这在当时可以个大事情。可是要飞到月球去,得有个交通工具,美国人起了个希腊神话中太阳神来命名了这个飞船。要制作这个飞船,可以动用了美国庞大的社会资源,可是这个超复杂的东东有着数不清的零件,如何管理它们成了大难题?于是计算机业内的百年老店—IBM出场了,研发了一款叫做ICS的软件,专门用来管理这些零件信息。后来以此为基础诞生了大名鼎鼎的IMS(Information Management System)数据库。这可是现代数据库的祖先。直到今天,这一老当益壮的数据库还在某些银行重要的核心岗位发挥着余热。

4. 三大模型之争

IMS数据库是基于层次结构构建的,很容易实现从上往下找,但对于左右横向查询就不太好用。另一个老牌公司GE看到了,开发出了新的基于网状的数据库IDS。这个貌似蜘蛛网结构的数据库很快取得的不错的市场成绩。作为行业的老大,IBM自然不会坐以待毙,在一个超级英雄EF.Codd(下图中,曾获得图灵奖)的带领下,提出了关系模型。一时间,层次、网状、关系三大关系模型杀的浑天黑地。直到一个重要的语言-SQL的出现,改变了整个战局。这是一个如此简单易懂的语言,可以很容易描述数据访问需求,战局的天平倾斜了关系模型。后来,聪明人扎堆的加州大学伯克利分校开发了INGRES(就是现在的PostgreSQL)数据库,证明关系模型是靠谱的,才为这场战争画上了句号。

5. 数据仓库的诞生

随着关系模型的成功,一大批数据库产品纷纷涌现,从早期的Oracle、DB2、SyBase、Informix等等。这些数据库产品很好地满足了数据存储计算的需要。各大公司也是赚的盆满钵满。但是随着企业的发展,这些处理的数据量越来越大,而且还需要从更多的维度去分析这些数据。原来这些产品都不太能满足需要。于是一些小公司开始在这个领域深挖下去,1981年NCR公司建立了第一个面向分析的数据库,1983年Teradata公司为美国富国银行建立了第一个决策系统(BTW,直到今天Teradata仍然处于数据行业的龙头榜首)。直到1988年,又是来自IBM公司研究员第一次提出了新的术语来描述这个场景 — 数据仓库(Data Warehouse),真正为这类产品打开了一扇大门。

6. 数仓理论基础

在数据仓库在诞生之初,走过了一段黑暗的历史,很多实施项目都失败了。其后面原因是没有理论基础(都不会玩)。1992年,一个牛逼的老爷子Bill Inmon写了一本书《如何构建数据仓库》,第一次把如何玩数仓给讲明白了,真正为数据仓库大规模推广打下基础。这个老爷子也被后来被称为“数仓之父”。这本书指出“数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合”。不过后来在实施路径上,又有新的做法,其代表性的人物就是Ralph Kimball,其在94年提出了《数据仓库的工具》一书,描述一种新的实施方式,掀起数据集市建设的热潮,大有从数据集市逐渐取代企业级数据仓库。两者争论不休,但各有利弊。前者主张数据仓库建设应采取自上而下的方式,以三范式进行模型设计;后者则建议采取自上而上的方式,以维度模型进行设计。到了1998年,Inmon提出了新的BI框架-CIF,把Kimball的数据集市包含进来。现在CIF已经成为建设数据仓库的红宝书。

7. 大数据的冲击

在很长一段时间,关系型数据库承载数据仓库的基础能力。但到了上世纪90年代,随着互联网的兴起,数据有了新的变化。需要数据库承载更大容量、更快速度、多样性结构等问题,整个数据库行业都在数据爆炸式的增长下瑟瑟发抖。就在这个时候,Google带来了一丝光亮,著名的三篇论文为整个数据行业带来巨大冲击。首次提出了大数据概念,拉开了“大数据”时代的大幕。各个公司(特别是互联网企业)纷纷抛弃传统手段,重起炉灶。原来令人困扰的问题,似乎一夜之间找到答案,粗暴计算模型+标准廉价硬件搞定一切,精巧设计、完美事务、标准SQL,都不如多招几个码农来的实惠。虽然数据库界,痛心疾首、奔走呼号,但似乎无人听到;仿佛一夜之间数据库几十年的积累被大数据吊打。

然而,这所谓没有完美的“银弹”。大数据的狂野架构,从诞生之日起就决定其“出身”。虽然在后来的大数据体系中引入SQL、MPP引擎、列存等等,也只不过吸取数据库几十年积累精华的一点皮毛。在其野蛮生长的基础,就很难改进。对于客户而言,大数据就如同一头怪兽,其能力强大但也不容驯服,需要一大批驯兽师(大数据专家)才能降服。这点远不如数据库来的亲近。于是就连Google这样的大厂也推出了Spanner这样的产品。

8. 回归数据库

数据库,在近些年来又迎来了春天。随着分布式协议的成熟,人们找到了一种新的方式来解决之前的痛点。分布式架构 + RDBMS = NEW SQL。之前面对的各种数据痛点:海量数据、极致性能、多模异构等问题,在新的架构下似乎也不是问题。而熟悉的SQL、数据一致性等又回来人们的身边。在数仓场景下,原来大数据方案中的各种工具组合,也终于可用一把瑞士军刀解决。于是乎,近两年无论是商业产品还是开源软件;无论是官方标准还是行业趋势,分布式数据库正逐步走入前台。

9. 云+数仓 = 云原生数据仓库

数据仓库,一直以来有些很困扰的问题。例如:面临着数据量爆炸性增长的问题,管理复杂、运维成本高的问题,价格昂贵、使用门槛较高问题等等。这些问题长期困扰着企业对数据仓库的使用。云的出现,为这些问题的解决开启一个新的方向。其从诞生之初,就致力于解决资源供给的问题。云与数仓的结合,提供了即开即用、无限扩展、简易运维、普惠大众,想想都会笑醒:)云原生数仓愈发受到人们的瞩目。它已经不仅仅是个概念,而是已经逐步走入成熟。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 韩锋频道 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档