因为云技术的推动,企业对于跨公司、跨行业、跨畛域的综合型数据的需要日趋显著,不同类型、格局数据之间的关联性碰撞越来越强烈,刺激着数据技术的翻新倒退,逐步造成了大数据生态构造。以后面临的问题的复杂性、综合性、交叉性,导致数据的应用老本越来越高,企业迫切需要可能无效突破数据孤岛、解决数据主权、对立数据汇聚和共享的混合式数据平台,数据湖应运而生。
什么是数据湖
早在 2011 年,福布斯的一篇文章中介绍了数据湖(Data Lake)的概念,针对数据仓库中的开发周期长、保护、开发成本高、失落细节数据等有余进行的补充。数据湖是一种大型数据存储库和解决引擎。它可能大量存储各种类型的数据,领有弱小的信息处理能力和解决简直有限的并发工作或工作的能力。维基百科对数据湖的解释是:数据湖是一种在零碎或存储库中以天然格局存储数据的办法,它有助于以各种模式和构造模式配置数据,通常是对象块或文件。
形象的形容数据湖是指用湖来形容存储数据的平台,流入湖中的水示意未经解决的原始数据,这些数据包含表格、文本、声音、图像等等。湖中的水就代表存储的各种数据,在湖中能够进行数据的解决、剖析、建模、加工,解决后的数据依然能够留在湖中。而流出的水代表通过剖析后,上游所须要的数据,再达到用户端,提供信息得出结论。
数据湖的次要思维将是不同类型、不同畛域的原始数据进行对立的存储,包含结构化数据、半结构化数据和二进制数据,造成一个包容所有模式的数据集中式数据存储集。这个数据存储集具备宏大的数据存储规模,PB 级别的计算能力,满足多元化的数据信息穿插剖析以及大容量、高速度的数据管道。
数据湖的劣势
轻松地收集数据:数据湖与数据仓库的一大区别就是,Schema On Read,即在应用数据时才须要 Schema 信息;而数据仓库是 Schema On Write,即在存储数据时就须要设计好 Schema。这样,因为对数据写入没有限度,数据湖能够更容易的收集数据。
从数据中挖掘更多价值:数据仓库和数据集市因为只应用数据中的局部属性,所以只能答复一些当时定义好的问题;而数据湖存储所有最原始、最细节的数据,所以能够答复更多的问题。并且数据湖容许组织中的各种角色通过自助剖析工具,对数据进行剖析,以及利用 AI、机器学习的技术,从数据中挖掘更多的价值。
打消数据孤岛:数据湖中会集了来自各个系统中的数据,这就打消了数据孤岛问题。
具备更好的扩展性和敏捷性:数据湖能够利用分布式文件系统来存储数据,因而具备很高的扩大能力。开源技术的应用还升高了存储老本。数据湖的构造没那么严格,因而天生具备更高的灵活性,从而进步了敏捷性。
数据湖与数据仓库的区别
数据仓库是一个优化的数据库,用于剖析来自事务零碎和业务线应用程序的关系数据。当时定义数据结构和 Schema 以优化疾速 SQL 查问,其中后果通常用于操作报告和剖析。数据通过了清理、丰盛和转换,因而能够充当用户可信赖的“繁多信息源”。
数据湖概念 2011 年被提出来,最后数据湖是数据仓库的补充,是为了解决数据仓库漫长的开发周期,昂扬的开发、保护老本,细节数据失落等问题呈现的。数据湖与数据仓库很相似,都是数据存储,两者之间次要区别如下图所示:
数据仓库是优化后的数据库,在存储数据之前要先定义好数据结构。而数据湖是一个数据存储的平台,不须要定义数据,可能自在存储不同类型的数据。在加载数据时,数据仓库须要事后定义,即写时模式;数据湖则是在筹备应用数据的时候定义数据,即读时模式。因而,数据湖进步了数据模型的定义灵活性,更能满足不同业务的需要。
湖仓一体
随着数据湖的劣势被越来越多的企业看到,越来越多的企业开始交融数据湖和数据仓库的平台,不仅能够实现数据仓库的性能,还实现了各种不同类型数据的解决性能、数据迷信、用于发现新模型的高级性能,这就是所谓的湖仓一体。
可管理性:湖仓一体提供欠缺的数据管理能力。数据湖中会存在两类数据:原始数据和解决后的数据。数据湖中的数据会一直的积攒、演变,因而蕴含以下数据管理能力:数据源、数据连贯、数据格式、数据 schema(库 / 表 / 列 / 行)。同时,数据湖是单个企业中对立的数据寄存场合,因而,还具备肯定的权限治理能力。
可追溯性:提供一个企业中全量数据的存储场合,须要对数据的全生命周期进行治理,包含数据的定义、接入、存储、解决、剖析、利用的全过程。一个弱小的数据湖实现,须要能做到对其间的任意一条数据的接入、存储、解决、生产过程是可追溯的,可能分明的重现数据残缺的产生过程和流动过程。
丰盛的计算引擎:提供从批处理、流式计算、交互式剖析到机器学习等各类计算引擎。个别状况下,数据的加载、转换、解决会应用批处理计算引擎;须要实时计算的局部,会应用流式计算引擎;对于一些摸索式的剖析场景,可能又须要引入交互式剖析引擎。随着大数据技术与人工智能技术的联合越来越严密,各类机器学习 / 深度学习算法也被一直引入,能够反对从 HDFS/S3 上读取样本数据进行训练。因而,湖仓一体解决方案提供计算引擎的可扩大 / 可插拔。
多模态的存储引擎:湖仓一体自身内置多模态的存储引擎,以满足不同的利用对于数据拜访需要(综合思考响应工夫 / 并发 / 拜访频次 / 老本等因素)。然而,在理论的应用过程中,为了达到可承受的性价比,湖仓一体解决方案提供可插拔式存储框架,反对的类型有 HDFS/S3 等, 并且在必要时还能够与外置存储引擎协同工作,满足多样化的利用需要。
偶数科技的数据云平台(Oushu Data Cloud)是新一代的数据基础设施,能够轻松实现湖仓一体解决方案,它可能依靠云原生个性、计算存储拆散架构、强 ACID 个性、强 SQL 规范反对、高性能并行执行能力等一系列底层技术的改革,实现高弹性、强扩展性、强共享性、强兼容性、强简单查问能力、自动化机器学习反对等下层技术能力的改革,最终帮忙企业有效应对大规模、强敏态、高时效、智能化等愈发显著的数字化趋势。