回顾数据仓库的倒退历程,大抵能够将其分为几个阶段:萌芽摸索到全企业集成时代、企业数据集成时代、凌乱时代 –“ 数据仓库之父 ” 间的论战、实践模型确认时代以及数据仓库产品百家争鸣时代。
数据仓库实践倒退历程
上世纪 70 年代,IBM 的 E.F.Codd 等人提出关系型数据库后,MIT 的研究员提出独自构建剖析零碎的基础理论,新的实践试图将业务解决零碎和剖析零碎离开,行将业务解决和剖析解决分为不同档次,针对各自的特点采取不同的架构设计准则。他们认为这两种信息处理的形式具备较大差异,应应用不同的架构和设计。但受限于过后的技术能力,这个钻研仅仅停留在实践层面。
到了 80 年代初,W.H.Inmon 开始了“记录零碎”、“本原数据”、“决策反对数据库”等专题的钻研。简直同时,J. Martin 在对于数据库分类的钻研中,专指一种他称之为“第 4 类数据库”的“由用户驱动的计算环境”,为这种环境提供信息服务的是一种以“搜寻和疾速信息回收”为基本特征的数据库。这个定义曾经和起初的数据仓库非常相似。
1988 年,IBM 公司的研究员创造性地提出了一个新的概念 – 数据仓库(Data Warehouse)。到了 1991 年,数据仓库之父 W.H.Inmon 出版数据仓库经典作品 –《构建数据库仓库》,标记着数据仓库概念的确立。书中指出,DW 是一个面向主题的、集成的、绝对稳固的、反映历史变动的数据汇合,并且是用于反对管理决策的数据汇合。该书还提供了建设数据仓库的领导意见和根本准则,凭借着这本书,W.H.Inmon 被称为数据仓库之父。
因为传统的关系型数据库已无奈满足构建数据仓库的需要,在 1993 年 Codd 提出了多维数据库和多维分析的概念,即 OLAP(On-Line Analysis Processing 联机剖析解决)。过后 Codd 认为 OLTP(On- Line Transaction Processing 联机事务处理)已不能满足终端用户对数据库查问的须要,SQL 对大数据库进行的简略查问也不能满足用户剖析的需要。用户的决策分析须要对关系数据库进行大量计算能力失去后果,而查问的后果并不能满足决策者提出的须要。因而提出了多维数据库和多维分析的概念,即 OLAP。
1995 年,Ralph Kimball 出版了《数据仓库工具箱》,数据仓库行业进入少林和武当之争。Inmon 主张建设数据仓库时采纳自上而下形式,以关系型数据库的第 3 范式进行数据仓库模型设计,而 Kimball 则是主张自下而上的形式,力推数据集市(Data Market)建设。两位数据仓库畛域的大咖为此吵得不可开交,他们的粉丝也纷纷站队,这种争吵直到 Inmon 推出新的 BI 架构 CIF,把 Kimball 的数据集市包含了进来才算平息。
晚期 MPP 时代的数仓
IBM DB2 和 Teradata 是晚期数仓实践的实践者,也是市场领导者。其中 Teradata 是 MPP 数仓最胜利的商业产品,简直是行业的天花板。诞生于 1970 年代末的 Teradata 公司,名称来源于 Tera Bytes,TB 数据的存储也展现了哪个年代创业者的雄心壮志。终于在 1992 年第一个 TB 级的数据库在华尔街呈现。1999 年,客户领有 130TB 的数据分布于 176 个节点。短短 7 年工夫,Teradata 客户的数据规模翻了 176 倍。
但进入新千年后,数据库巨头间的竞争进入白热化阶段,以 Oracle Exadata 为代表的一体机很快锋芒毕露。之后在 Postgres 根底上演变而来的 Greenplum 构建了开源的 MPP 架构数仓,也在市场中有很高的影响力。但真正让数仓面目一新的是云计算时代的云原生数仓 Snowflake。
一体机时代的数仓
新千年后,数仓进入一体机的疾速倒退时代,典型代表是 Netezza、SAP HANA 和 Oracle Exadata。Netezza 率先推出,起初被 IBM 收买。而 Oracle Exadata 为代表的一体机仍然是明天 Oracle 公司的外围业务。2008 年,Exadata V1 诞生,由 Oracle 提供软件惠普提供硬件,这一代产品仅反对数据仓库和商务智能等 OLAP 工作。到了 2009 年 9 月,Exadata V2 公布,采纳了 SUN 的(尔后 MySQL 也属于了 Oracle),次年 Oracle 实现了 SUN 的收买。在 V2 版本中,Exadata 存储节点中首次采纳了 Flash 卡,从而能够同时反对 OLAP 和 OLTP 类型的负载。有了高性能产品的同时也有了极其低廉的价格。
驰名的 Conor O’Mahony(DB2 的市场经理)列举了应用一台全机架零碎(full-rack)Exdata V2 所需的费用列表:
$1,150,000 硬件价格
$1,680,000 存储服务器的软件价格
$369,600 存储服务器软件反对和维护费用(以 22% 计)
$1,520,000 Oracle 企业版软件价格($47.5k8 servers8 cores*0.5 Intel core factor)
$736,000 Oracle RAC 软件价格($23k8 servers8 cores*0.5 Intel core factor)
$368,000 Oracle 分区个性价格 ($11.5k8 servers8 cores*0.5 Intel core factor)
$368,000 Oracle 高级压缩(Advanced Compression) ($11.5k8 servers8 cores*0.5 Intel core factor)
$160,000 Oracle 企业管理器诊断包(举荐装置)
$160,000 Oracle 企业管理器调优包(举荐装置)
$728,640 以上除去存储服务器软件的第一年软件维护反对价格(以 22% 计)
Oracle Exadata 一体机
如此低廉的价格,对于个别企业显然无奈承受。人们置信全新一代的数仓技术肯定会在一个万众嘱目标状况下呈现,像盖世英雄身披金甲圣衣,脚踏七彩祥云而来。
云计算时代的数仓
随着挪动互联网、物联网的蓬勃发展,率先掀起数据库反动的是 Google 公司,他的三篇论文开启了大数据时代,之后言数仓、大数据必称 Hadoop。但它的弊病也颇为显著,低廉、不方便使用、难保护等问题始终无奈很好的解决。直到计算机行业七彩祥云 – 云计算呈现,为整个行业和人类生存带来巨大变化。而此时的数据仓库在变更的前夜显得异样宁静,古语言:三年不鸣一举成名,Snowflake 就是三年不飞一飞冲天的云计算时代云原生数仓产品。
2012 年,在 Oracle 公司工作十多年的 2 位程序员信心在云上建设一个数据仓库,于是诞生了 Snowflake 公司。它诞生的第一天,就有云计算的特点:存储与计算拆散、按量付费、云中立。作为第一个基于云原生的数据仓库,Snowflake 敏锐的抓住从本地到上云的时代趋势,充分利用私有云弱小基础设施能力,让用户更加轻松实现跨云平台、跨区域的形式挪动数据。这种基于云原生、云中立、跨多云平台的云原生数据服务,为客户提供微小数据价值的同时,极大升高了客户应用、保护、价格老本。
Snowflake 产品上的胜利同时也获得资本市场的巨大成功。2020 年 9 月 16 日,在纽交所胜利 IPO,股神巴菲特斥几亿美元入股,交易首日股价翻倍市值达到 704 亿美元,成为史上规模最大的软件 IPO,之后市值一度最高冲破 1200 亿美元,俨然成为资本市场的宠儿。
数据仓库和数据库关系
狭义的数据仓库并不是一项技术,也不是一个产品,而是一种数据处理过程。数据仓库的数据起源有多种,业务零碎、日志、互联网、零碎运行参数等等,这些数据能够在数据仓库中进行会合,而后通过对立的建模,加工成服务与数据分析的数据模型,最终辅助企业剖析决策。
那如何构建数据仓库呢?常见的是应用 OLAP 数据库(如近年风行 Clickhouse)存储数据,通过数据建模、ETL、数据可视化等一系列操作,这一过程被称为构建数据仓库。因为数据仓库基于 OLAP 产品,是做在线剖析解决,这是与数据库的本质区别。另外,既然是数据仓库就要加工数据,加工数据会耗时间,所以加工数据在理论的利用中又分为批处理和实时处理。而传统的数据库是为了解决事务存在的,他们的区别如下。
总结和瞻望
数据仓库是 80~90 年代提出的概念,互联网企业为了解决更大数据量的治理问题,掀起了大数据技术新浪潮,大数据曾经跳出了数仓定义畛域,将来再专题论述。随着 2020 年云原生数仓 Snowflake 上市并获得微小的胜利,大家开始趋势把数据仓库、大数据、数据湖、云存储的技术全面交融,全世界掀起了云原生数据仓库和湖仓一体的热潮,国内上 Databricks、Clickhouse 曾经侧面 PK,国内有 SequoiaDB、MaxCompute,AnalyticDB,GaussDB(DWS),OuShuDB、StarRocks、SelectDB、HashData 等不下数十款产品,还有很多相似 HTAP 新品在路上,将来必将迎来百仓大战的腥风血雨。
数据仓库发展史