大数据发展历程

大数据技术在过去几十年中取得了巨大的发展。从最初的数据仓库概念,到后来的Hadoop技术和数据湖、再到如今的大数据平台和数据中台,每一个阶段带动着技术和业务的变革。

本文将梳理大数据发展的历程,包含数据仓库、数据湖、大数据平台和数据中台四个阶段。并运用”Why-What-How”的结构分别梳理每个阶段的演变原因,要解决的问题以及支撑技术。

数据仓库:

  • Why:随着企业信息化程度的不断提高,企业需要已有的数据转化为知识,帮助管理者做出经营分析决策。因此,在上世纪90年代数据仓库应运而生。需要集成企业多个业务系统的数据,进行大数据量的查询。
  • What: 数据仓库是在企业管理和决策中面向主题的、集成的、与事件相关的、不可修改的数据集合。
  • How:
    • 使用ETL(Extract, Transform, Load)过程,将来自不同业务系统的数据集成到一起,使得数据能够被高效地管理
    • OLAP技术使得数据分析师可以从不同维度进行高效的数据分析和查询。
  • 特点:
    • 当面临海量规模的数据时,传统的数据仓库难以扩展。
    • 传统的数据仓库只能处理有严格schema的结构化数据,无法处理半结构化和非结构化数据。

      数据湖:

  • Why:随着互联网时代的来临,由于数据规模进一步扩大,数据也不仅仅是结构化的数据,传统的数据仓库无法支撑。2000年代初,Google的三驾马车以及开源的Hadoop技术将大数据的发展带入了数据湖时代。
  • What: 数据湖是一个以原始格式存储海量结构化和非结构化数据的存储系统。
  • How:由以下技术支撑
    • 分布式存储:Hadoop Distributed File System(HDFS),Amazon S3,Azure Data Lake Storage(ADLS)等
    • 分布式计算:Apache Hadoop、Apache Spark、Apache Flink等
    • SQL查询引擎:Hive、Impala、Spark SQL等
    • 任务调度框架:Azkaban、Oozie等
    • 数据迁移工具:Sqoop等
    • 日志收集框架:Flume等
    • 集群资源管理框架:Yarn等
    • 分布式协调服务:Zookeeper等
  • 特点:
    • 完全分布式,易扩展
    • 可以存储结构化、非结构化、半结构化数据

      大数据平台:

  • Why:数据开发涉及的技术和流程繁多。技术方面,Hadoop生态圈技术繁多,技术门槛限制了其易用性。流程方面,数据开发流程包括但不限于:数据集成,数据开发,数据测试,任务部署及运维,数据质量监测等。面对如此复杂的流程,如果没有高效的平台作为支撑,就如同写代码没有IDE,效率低下。大数据平台就是为了提高数据开发的效率,降低数据开发的门槛,让数据能够快速地被加工。
  • What: 大数据平台是面向数据研发场景的、覆盖数据研发完整工作链路的工具集合和数据工作台
  • How: 大数据平台一般具有以下组件
    • 大数据基础设施(存储,计算,任务调度)
    • 数据集成工具
    • 数据开发工具(离线,实时)
    • 数据测试工具
    • 任务监控及运维中心

      数据中台:

  • Why:随着企业数据规模的进一步扩大以及数据需求的快速增长,当报表、数据资产、指标越来越多时,出现了数据质量差、取数效率低、数据重复建设等问题,阻碍数据进一步产生价值。企业需要应对数据治理的挑战
  • What: 数据中台强调数据治理以及数据的规范化建设,通过构建统一的公共数据层,打造统一、标准、共享、安全的数据体系。
  • How:数据中台一般具有以下组件(自顶向下)
    • 数据应用
    • 数据服务:支持通过API暴露数据给数据应用
    • 公共数据层
    • 数据治理:元数据管理,数据质量,数据地图(Data Catalog),数据安全与合规。
    • 大数据平台(包括大数据基础设施及数据集成、开发、测试,任务运维等工具)
    • 大数据基础设施