随着云计算、社交媒体、物联网、短视频等新一代互联网技术的快速发展,数据的数量和复杂性不断增加。许多企业和组织已经积累了大量的各种类型的数据,对于如何存储和管理这些海量数据,以及如何高效地分析和利用这些数据,是每个组织当前面临的重要挑战。对于企业来说,有效处理和分析海量数据,对于数字化转型过程中的各种决策,具有至关重要的作用。
大数据的兴起给数据库研究带来了诸多挑战。大数据通常具有四个典型特征,包括数据的数量、多样性、产生速度和真实性。尤其是物联网、社交网络、科学研究和音视频等领域产生了大量的半结构化和非结构化数据,这些复杂且变化多端的数据集往往呈现出烟筒式的分散结构。因此,企业和组织需要采取更有效的数据架构来存储和处理这些复杂的数据,同时采用更加灵活的数据分析方法。
虽然许多企业和组织仍通过传统的数据集和数据仓库进行数据处理和分析,但在大数据时代,擅长处理结构化数据的数据仓库已经不能满足复杂数据分析的需求。传统数据存储技术面临的最大挑战在于三个方面:灵活性不足、存储成本高昂以及不擅长处理多种类型的数据。
为了实现对这些复杂数据的全面、灵活的分析,近年来出现了数据湖的概念。数据湖是以原始数据格式存储各种来源数据,简化和改进大数据存储、管理和分析的一种技术。数据湖的优点引起了大数据领域的商业和技术专家以及学术研究者的广泛关注,近年来对数据湖相关的研究得到了飞速发展。迄今为止,已经提出了多种数据湖解决方案和系统架构,然而,由于数据湖概念的发展还处于早期阶段,很多研究和方案都是针对特定应用领域的。此外,数据湖关键技术方面的研究也主要集中在架构和元数据管理等部分领域,缺乏数据处理全过程中各阶段详细技术分析和讨论。
特别是在国内,数据湖概念还相对陌生,很多组织和企业在对数据湖的概念还没有充分的认识。而国内学术领域对数据湖相关的技术研究非常有限,很多学者还没有对数据湖和大数据技术平台相关的概念进行系统的比较和解析。
数据湖的发展历程
在谷歌学术搜索引擎上以“datalake”为关键词进行搜索,得出以下的统计图。从图中可以清楚地看到,2014年之前,数据湖还处于萌芽阶段,相关的文章数量在低位徘徊。2015-2017年,数据湖概念开始被业内熟知,相关技术得到了积累,因此论文数量有了明显的增加趋势。而自2018年以来,数据湖技术得到了蓬勃发展,相关文章和论文数量迅速增加。根据以上分析数据,我们可以将数据湖的发展分为三个阶段:萌芽期、技术积累期和快速发展期。
萌芽期
在商业领域,数据湖经历了提出、炒作、批评和改进的过程。数据湖最早以大数据平台解决方案的形式出现,解决了传统数据集市的局限性。2013年,Pivot提出了业务数据湖架构,尝试以数据湖的思想解决数据集成和分析数据的即时访问问题,但没有提出完善的数据治理方案。2014年,商业领域普遍接受数据湖作为数据中心,以提高可扩展性和灵活性。很多大数据供应商开始炒作“数据湖”概念,但Gartner公司提出了对数据湖的批评和质疑,指明了今后几年数据湖技术的发展方向。普华永道将数据湖应用到企业数据集成方案,IBM公司提出了面向业务主题的大数据的分析方案,学术界也开始关注数据湖,并提出建议通过AI和众包来克服数据湖在数据集成、访问和数据质量等方面所面临的挑战。
技术积累期
2015-2017年,数据湖技术积累期,商业和学术界对数据湖的认可度提升,技术积累增多。2015年,Terrizzano等人在数据争论中描述了数据湖在实施过程中的挑战,包括数据采集、梳理、供应、保障等方面遇到的问题。该技术文档是盖特纳公司提出数据湖质疑后,首次全面阐述数据湖所面临的挑战,指明了未来需要解决的问题方向。同时,Huang发表了大数据时代的《数据湖管理》,数据湖在学术界开始受到广泛关注。在此期间,数据湖应用方面的研究也开始出现,许多IT商业巨头推出了自己的数据湖产品,如谷歌的goodssystem、微软的AzureDataLakeStore、SAP的Vora等。这期间,数据湖的研究主要集中在概念定义方面,数据湖架构研究扩展有限,主要围绕元数据管理展开。数据湖的应用研究数量有限,用途仅限于大数据存储方面,未达到更深层次应用高度。
快速增长期
2018年至今,数据湖在商业界和学术界得到了蓬勃发展。这一期间数据湖在架构、概念、应用、治理等等方面都得到了丰富的补充。首先许多IT大厂商都提出了自己的数据湖解决方案,国外有亚马逊、微软、谷歌,国内有阿里、华为、腾讯、星环等等,在数据湖的各个组成部分都可以提供成熟的方法和工具。
与此同时,学术界对数据湖的原型实现相关的研究也得到了广泛的关注,包括元数据管理、数据质量、数据来源、数据准备、数据集组织、数据集成、数据发现等。也可以看到这一时期出现了大量的数据湖应用研究,这些应用领域包括医疗、电力、智慧城市、教育、通信等各个方面,为大数据平台在各领域的深度融合起到了非常关键的作用。这个阶段国内研究者也开始关注数据湖技术,研究领域涉及到数据湖架构和安全技术。
经过近几年的快速发展,再加上数据湖在产业界和学术界不断突破,给企业和组织的数据湖落地提供更加丰富的解决方案和建议。但是,数据湖的概念目前还处于早起阶段, 其架构还没有形成行业标准,技术细节方面需要解决的难题层出不穷,解决方案过度依赖机器学习等问题需要解决。
数据湖的概念
数据湖目前的定义较为模糊,它可以是存储海量数据的方法,基于现有数据架构的发展产物,一种灵活可扩展的数据存储和管理系统。
数据湖和数据仓库
数据仓库这一概念最早由IBM公司提出,Inmon定义为一种支持管理决策、面向主题、非易失、集成且不断变化的数据集合。随着数据湖这一概念的出现,许多人将其与数据仓库相联系,甚至有人认为数据湖就是大数据时代的数据仓库。两者都集中存储不同来源的数据,为组织的数据集成提供了重要依据,同时也为组织提供了数据分析、挖掘和决策方面的数据管理和处理平台。然而,这两个概念的产生背景和时间存在巨大差异,更重要的是,两者在数据处理思想上存在巨大的不同。
两者之间的主要差异之一在于数据的获取方式。数据仓库主要获取已处理和过滤过的数据,而数据湖则主要获取原始或未处理过的数据。具体来说,数据在存入仓库之前会经过处理(例如通过ETL过程进行清洗和转化),而在数据湖中存放的数据则是未经过处理的原始数据。数据仓库中的数据是已经清理的,可以直接进行分析,也就是所谓的“写模式”。相比之下,数据湖采用了“读模式”,数据会根据需要进行有选择性地组织和分析,从而能更加灵活地处理数据。
另一个关键的区分点在于使用的主题或目标。数据仓库获取的数据通常用于特定的主题或目标,因此不会浪费不必要的存储空间,对数据分析者的专业知识要求不高。相反,数据湖的使用目标在前期并没有确定,这些数据可以用于未来的任何分析目标。这就意味着分析者需要熟悉大量未处理过的数据,并可能需要依赖具有特定技能的数据科学家的帮助。
数据存储库的可访问性或易用性是另一个区分数据仓库和数据湖的方面。由于数据仓库的结构相对固定,调整数据结构的成本可能非常高。相反,由于数据湖并没有固定的数据结构,因此具有极高的灵活性。
数据中台和数据湖
中台概念最早是阿里巴巴集团提出,是企业内部共享业务思想的产物,而中台又分为业务中台、数据中台、技术中台。其中数据中台(DataPlatform)以数据为中心,在数据集成(特别是语义集成)的基础上以服务的方式提供数据的全生命周期管理,为业务构建提供便利,实现数据对于应用业务的价值,其本质就是数据平台。
数据中台和数据湖都是企业应对内外部大数据生态挑战的数据架构方案,两个概念的核心中都包括数据统一集成、开放数据能力以及灵活数据访问等特点。虽然两个概念都产生在大数据时代,但针对解决的问题范围不同。
数据湖强调的是应对大数据挑战的数据存储和治理方案,而数据中台是一种全局的数据解决方案。数据中台是数据湖概念的超集,数据中台除了包含数据湖概念特性之外,还需要满足更多的系统功能,包括数据资产管理、治理机制、数据安全、数据能力共享等等。
两者解决的问题背景是不同的。数据湖概念的出现带来了数据存储和探索方式转变,有效应对了大数据带来的技术挑战,而数据中台则解决了企业大数据平台实施层面的问题,关注的问题是如何更好的发掘数据价值,是属于企业信息管理的范畴。
国内很多数据厂商和企事业单位在数字化转型方案中都引入了数据中台概念,可见数据中台概念在国内已经覆盖了数据湖的概念。数据中台概念目前更多处在商业领域,在学术领域中仍没有受到足够重视。相比之下,数据湖概念在国外的学术领域中发展的非常迅速,并已经形成了一定的学术体系。