伴随着5G、大数据、人工智能、物联网等技术的飞速发展,各行各业的业务场景日益复杂,数据呈现出大规模、多样性的特点,特别是非结构化数据呈现出爆发式的增长态势。企业对数据库技术的需求不再局限于结构化的OLTP数据交易,而是需要进一步扩展到对多样化数据进行实时处理的场景。传统的数据湖在事务一致性及实时处理方面有所欠缺,而数据仓库也无法应对高并发、多数据类型的处理,因此,支持事务一致性、提供高并发实时处理及分析能力的湖仓一体架构应运而生。湖仓一体架构在成本、灵活性、统一数据存储、多元数据分析等多方面具备优势,正逐步转化为下一代数据管理系统的核心竞争力。
湖仓一体是一种新型的开放式架构,打通了数据仓库和数据湖,将数据仓库的高性能及管理能力与数据湖的灵活性融合了起来,底层支持多种数据类型并存,能实现数据间的相互共享,上层可以通过统一封装的接口进行访问,可同时支持实时查询和分析,为企业进行数据治理带来了更多的便利性。湖仓一体可在数据入湖后原地进行数据处理与分析,能有效避免数据冗余及流动导致的算力、网络及成本开销,可以作为超大型ODS存储贴源数据,实现全量数据的实时处理。
湖仓一体架构在数据管理中主要具有以下几大关键特征:
一是支持分析多种类型数据。湖仓一体架构可为多应用程序提供数据的入库、转换、分析和访问。数据类型包括结构化与非结构化类型,如文本、图像、视频、音频等,以及半结构化数据,如JSON等。
二是数据可治理,避免产生数据沼泽。湖仓一体架构可以支持各类数据模型的实现和转变,支持DW模式架构,例如星型模型、雪花模型等,可保证数据的完整性,同时具有健全的治理和审计机制,能够避免数据沼泽现象的出现。
三是事务支持。在企业中,数据库往往要为业务系统提供并发的数据读取和写入。湖仓一体架构对事务ACID的支持,可确保并发访问,尤其是SQL访问模式下的数据一致性、正确性。
四是BI支持。湖仓一体支持直接在源数据上使用BI工具,这样可以提高分析效率,降低数据延时。另外,相比于在数据湖和数据仓库中分别操作两个副本的方式,湖仓一体更具成本优势。
五是存算分离。湖仓一体采用存算分离架构,可使系统能够扩展到更大规模的并发能力和数据容量,能满足新时代对于分布式数据架构的要求。
六是开放性。湖仓一体采用开放、标准化的存储格式(例如行存、列存、块存),能提供丰富的API支持。因此,各种工具和引擎(包括机器学习和Python/R库)可以高效地对数据进行直接访问。
从落地性来看,湖仓一体技术架构落地目前有三种方式:
第一个融合方向是基于Hadoop体系的数据湖向数据仓库能力扩展,湖中建仓,从数据湖进化到湖仓一体。湖仓一体结合了数据湖和数据仓库特点,直接在用于数据湖的低成本存储上实现与数据仓库中类似的数据结构和数据管理功能。目前主要有Netflix等开源企业在探索此技术路线。
第二个是基于自身云平台或第三方对象存储(如OSS、S3、Ceph等),基于Hadoop或自研技术进行湖仓一体能力的搭建。探索此技术路线的通常是各大云厂商,如AWS、阿里云、华为云等。
第三个融合方向是以数据库技术为基础,自研分布式平台,从调度、计算到存储不依赖第三方平台,形成可以灵活在公有云、私有云、裸金属等场景独立部署使用的能力。技术方向上更注重于实时高并发场景及非结构化数据数据治理,并逐步向更广泛的分析场景发展,主要厂商以Snowflakes、Databricks、巨杉数据库等为代表。
三个技术方向均是厂商依托自身技术优势进行的架构融合,均有自身优劣势及技术特性,能够满足不同场景下的客户需求。
同时,本报告指出了湖仓一体架构未来的发展趋势:一是随着企业对海量大数据的实时处理需求越来越迫切,湖仓一体架构将成为越来越多用户的主流选择,助力各行各业数字化转型;二是以人为轴的数据开发和优化,将越来越难以满足企业实际需求,届时人工智能技术将介入数据库的自动调优、自动整理过程,助力提升湖仓一体架构的智能化。
在报告的最后,赛迪顾问对用户和厂商提出了一些发展建议。对用户而言,要重视专业化服务能力和成功案例的可移植性,选择适合自身情况的数据管理产品。对厂商而言,要重视研发投入,加快产品与新兴技术融合,同时不断提高专业化服务水平,重视实施与交付能力的提升。