360图书馆文章备份

← 返回首页

数据仓库、数据湖、数据中台终于有人说清楚了,建议收藏!

2020-10-23

前言

随着大数据技术的不断更新和迭代,数据管理工具得到了飞速的发展,相关概念如雨后春笋一般应运而生,如从最初决策支持系统(DSS)到商业智能(BI)、数据仓库、数据湖、数据中台等,这些概念特别容易混淆,本文对这些名词术语及内涵进行系统的解析,便于读者对数据平台相关的概念有全面的认识。

数据仓库

数据仓库平台逐步从BI报表为主到分析为主、到预测为主、再到操作智能为目标。

图1.数据仓库发展阶段划分

商务智能(BI,Business Intelligence)是一种以提供决策分析性的运营数据为目的而建立的信息系统。是属于在线分析处理:On Line Analytical Processing(OLAP),将预先计算完成的汇总数据,储存于魔方数据库(Cube) 之中,针对复杂的分析查询,提供快速的响应。在前10年,BI报表项目比较多,是数据仓库项目的前期预热项目(主要分析为主的阶段,是数据仓库的初级阶段),制作一些可视化报表展现给管理者。

  • 它利用信息科技,将分散于企业内、外部各种数据加以整合并转换成知识,并依据某些特定的主题需求,进行决策分析和运算;
  • 用户则通过报表、图表、多维度分析的方式,寻找解决业务问题所需要的方案;
  • 这些结果将呈报给决策者,以支持策略性的决策和定义组织绩效,或者融入智能知识库自动向客户推送。

1.1

数据仓库基本定义

数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化的(Time Variant)数据集合,用于支持管理决策和信息的全局共享。其主要功能是将组织透过资讯系统之联机事务处理(OLTP)经年累月所累积的大量资料,透过数据仓库理论所特有的资料储存架构,作一有系统的分析整理,以利各种分析方法如联机分析处理(OLAP)、数据挖掘(Data Mining)之进行,并进而支持如决策支持系统(DSS)、主管资讯系统(EIS)之创建,帮助决策者能快速有效的自大量资料中,分析出有价值的资讯,以利决策拟定及快速回应外在环境变动,帮助建构商业智能(BI)。[1]:引自全球数据仓库之父 W.H.Inmon。

  • 所谓主题:是指用户使用数据仓库进行决策时所关心的重点方面,如:收入、客户、销售渠道等;所谓面向主题,是指数据仓库内的信息是按主题进行组织的,而不是像业务支撑系统那样是按照业务功能进行组织的。
  • 所谓集成:是指数据仓库中的信息不是从各个业务系统中简单抽取出来的,而是经过一系列加工、整理和汇总的过程,因此数据仓库中的信息是关于整个企业的一致的全局信息。
  • 所谓随时间变化:是指数据仓库内的信息并不只是反映企业当前的状态,而是记录了从过去某一时点到当前各个阶段的信息。通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。

图2.数据仓库逻辑架构

1.2

数据仓库系统作用和定位

数据仓库系统的作用能实现跨业务条线、跨系统的数据整合,为管理分析和业务决策提供统一的数据支持。数据仓库能够从根本上帮助你把公司的运营数据转化成为高价值的可以获取的信息(或知识),并且在恰当的时候通过恰当的方式把恰当的信息传递给恰当的人。

图3.数据仓库的作用

  • 是面向企业中、高级管理进行业务分析和绩效考核的数据整合、分析和展现的工具;
  • 是主要用于历史性、综合性和深层次数据分析
  • 数据来源是ERP(例:SAP)系统或其他业务系统;
  • 能够提供灵活、直观、简洁和易于操作的多维查询分析;
  • 不是日常交易操作系统,不能直接产生交易数据;

数据仓库针对实时数据处理,非结构化数据处理能力较弱,以及在业务在预警预测方面应用相对有限。

1.3

数据仓库能提供什么

图4.数据仓库提供价值

1.4

数据仓库系统构成

数据仓库系统除了包含分析产品本身之外,还包含数据集成、数据存储、数据计算、门户展现、平台管理等其它一系列的产品。

图5.数据仓库产品构成

图6.数据仓库产品构成

数据湖

数据湖(Data Lake)是Pentaho的CTO James Dixon提出来的(Pentaho作为一家BI公司在理念上是挺先进的),是一种数据存储理念——即在系统或存储库中以自然格式存储数据的方法。

2.1

维基百科对数据湖的定义

数据湖(Data Lake)是一个存储企业的各种各样原始数据的大型仓库,其中的数据可供存取、处理、分析及传输。数据湖是以其自然格式存储的数据的系统或存储库,通常是对象blob或文件。数据湖通常是企业所有数据的单一存储,包括源系统数据的原始副本,以及用于报告、可视化、分析和机器学习等任务的转换数据。数据湖可以包括来自关系数据库(行和列)的结构化数据,半结构化数据(CSV,日志,XML,JSON),非结构化数据(电子邮件,文档,PDF)和二进制数据(图像,音频,视频)。来源:维基百科。

目前,Hadoop是最常用的部署数据湖的技术,所以很多人会觉得数据湖就是Hadoop集群。数据湖是一个概念,而Hadoop是用于实现这个概念的技术。

图7.数据湖的处理架构

图8.数据湖示意图

2.2

数据湖能给企业带来多种能力

数据湖能给企业带来多种能力,例如,能实现数据的集中式管理,在此之上,企业能挖掘出很多之前所不具备的能力。另外,数据湖结合先进的数据科学与机器学习技术,能帮助企业构建更多优化后的运营模型,也能为企业提供其他能力,如预测分析、推荐模型等,这些模型能刺激企业能力的后续增长。数据湖能从以下方面帮助到企业:

  • 实现数据治理(data governance)。
  • 通过应用机器学习与人工智能技术实现商业智能。
  • 预测分析,如领域特定的推荐引擎。
  • 信息追踪与一致性保障。
  • 根据对历史的分析生成新的数据维度。
  • 有一个集中式的能存储所有企业数据的数据中心,有利于实现一个针对数据传输优化的数据服务。
  • 帮助组织或企业做出更多灵活的关于企业增长的决策。

2.3

数据仓库与数据湖差异

  • 在储存方面上,数据湖中数据为非结构化的,所有数据都保持原始形式。存储所有数据,并且仅在分析时再进行转换。数据仓库就是数据通常从事务系统中提取。
  • 在将数据加载到数据仓库之前,会对数据进行清理与转换。在数据抓取中数据湖就是捕获半结构化和非结构化数据。而数据仓库则是捕获结构化数据并将其按模式组织。
  • 数据湖的目的就是数据湖非常适合深入分析的非结构化数据。数据科学家可能会用具有预测建模和统计分析等功能的高级分析工具。而数据仓库就是数据仓库非常适用于月度报告等操作用途,因为它具有高度结构化。
  • 在架构中数据湖通常,在存储数据之后定义架构。使用较少的初始工作并提供更大的灵活性。在数据仓库中存储数据之前定义架构。

表1.数据仓库、数据湖和数据湖的区别如下:

数据仓库

数据湖

主要处理历史的、结构化的数据,而且这些数据必须与数据仓库事先定义的模型吻合。