数据库行业正走向分水岭。
过去几年,全球数据库行业发展迅猛。2020年,Gartner首次把数据库领域的魔力象限重新定义为Cloud DBMS,把云数据库作为唯一的评价方向;2021年,Gartner魔力象限又发生了两个关键的变化:
1、Snowflake和Databricks两个云端数据仓库进入领导者象限。
2、放开了魔力象限的收入门槛限制,SingleStore、Exasol、MariaDB、Couchbase等数据库新势力首次进入榜单。
某种程度上,这种变化的背后,暗示着全球数据库已经进入发展的黄金时代,也是一众新兴势力的加速崛起之年。其中,最为典型的例子是Snowflake和Databricks经常隔空喊话,前者是云端数仓的代表玩家,去年继续保持了1倍以上的业务增长;后者因推出“湖仓一体”,估值一路飙升至360亿美金,两者之争,其实是数据库新旧架构之争。
数据湖、数据仓、湖仓一体发展历程
(来源:Databricks官方)
随着企业数字化驶入深水区,对于数据使用场景也呈现多元化的趋势,过去容易被企业忽略的数据,开始从幕后走到台前,如何为众多场景选择一款合适的数据库产品,已经成了很多CIO和管理者的一道必答题。
但有一点可以确定的是,过去的数据库已难以匹配眼下日益增长的数据复杂度需求,基于扩展性和可用性划分,分布式架构突破单机、共享、集群架构下的数据库局限,近些年发展态势迅猛。
为此,这篇文章我们将主要分析:
1、数据仓、数据湖、湖仓一体究竟是什么?
2、架构演进,为什么说湖仓一体代表了未来?
3、现在是布局湖仓一体的好时机吗?
在湖仓一体出现之前,数据仓库和数据湖是被人们讨论最多的话题。正式切入主题前,先跟大家科普一个概念,即大数据的工作流程是怎样的?这里就要涉及到两个相对陌生的名词:数据的结构化程度和数据的信息密度。前者描述的是数据本身的规范性,后者描述的是单位存储体积内、包含的信息量的大小。一般来说,人们获取到的原始数据大多是非结构化的,且信息密度比较低,通过对数据进行清洗、分析、挖掘等操作,可以排除无用数据、找到数据中的关联性,在这个过程中,数据的结构化程度、信息密度也随之提升,最后一步,就是把优化过后的数据加以利用,变成真正的生产资料。简而言之,大数据处理的过程其实是一个提升数据结构化程度和信息密度的过程。在这个过程中,数据的特征一直在发生变化,不同的数据,适合的存储介质也有所不同,所以才有了一度火热的数据仓库和数据湖之争。我们先来聊聊数据仓库,它诞生于1990年,是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,主要用于支持管理决策和信息的全局共享。简单点说,数据仓库就像是一个大型图书馆,里面的数据需要按照规范放好,你可以按照类别找到想要的信息。就目前来说,对数据仓库的主流定义是位于多个数据库上的大容量存储库,它的作用在于存储大量的结构化数据,为管理分析和业务决策提供统一的数据支持,虽然存取过程相对比较繁琐,对于数据类型有一定限制,但在那个年代,数据仓库的功能性已经够用了,所以在2011年前后,市场还是数据仓库的天下。到了互联网时代,数据量呈现“井喷式”爆发,数据类型也变得异构化。受数据规模和数据类型的限制,传统数据仓库无法支撑起互联网时代的商业智能,随着Hadoop与对象存储的技术成熟,数据湖的概念应用而生,在2011年由James Dixon提出。相比于数据仓库,数据湖是一种不断演进中、可扩展的大数据存储、处理、分析的基础设施。它就像一个大型仓库,可以存储任何形式(包括结构化和非结构化)和任何格式(包括文本、音频、视频和图像)的原始数据,数据湖通常更大,存储成本也更为廉价。但它的问题也很明显,数据湖缺乏结构性,一旦没有被治理好,就会变成数据沼泽。从产品形态上来说,数据仓库一般是独立标准化产品,数据湖更像是一种架构指导,需要配合着系列周边工具,来实现业务需要。换句话说,数据湖的灵活性,对于前期开发和前期部署是友好的;数据仓库的规范性,对于大数据后期运行和公司长期发展是友好的,那么,有没有那么一种可能,有没有一种新架构,能兼具数据仓库和数据湖的优点呢?依据DataBricks公司对Lakehouse 的定义,湖仓一体是一种结合了数据湖和数据仓库优势的新范式,在用于数据湖的低成本存储上,实现与数据仓库中类似的数据结构和数据管理功能。湖仓一体是一种更开放的新型架构,有人把它做了一个比喻,就类似于在湖边搭建了很多小房子,有的负责数据分析,有的运转机器学习,有的来检索音视频等,至于那些数据源流,都可以从数据湖里轻松获取。就湖仓一体发展轨迹来看,早期的湖仓一体,更多是一种处理思想,处理上将数据湖和数据仓库互相打通,现在的湖仓一体,虽然仍处于发展的初期阶段,但它已经不只是一个纯粹的技术概念,而是被赋予了更多与厂商产品层面相关的含义和价值。这里需要注意的是,“湖仓一体”并不等同于“数据湖”+“数据仓”,这是一个极大的误区,现在很多公司经常会同时搭建数仓、数据湖两种存储架构,一个大的数仓拖着多个小的数据湖,这并不意味着这家公司拥有了湖仓一体的能力,湖仓一体绝不等同于数据湖和数据仓简单打通,反而数据在这两种存储中会有极大冗余度。关于这个问题,我们其实可以换一个问法,即在数据智能时代,湖仓一体会不会成为企业构建大数据栈的必选项?就技术维度和应用趋势来看,这个问题的答案几乎是肯定的,对于高速增长的企业来说,选择湖仓一体架构来替代传统的独立仓和独立湖,已经成为不可逆转的趋势。一个具有说服力的例证是,现阶段,国内外各大云厂商均陆续推出了自己的“湖仓一体”技术方案,比如亚马逊云科技的Redshift Spectrum、微软的Azure Databricks、华为云的Fusion Insight、滴普科技的FastData等,这些玩家有云计算的老牌龙头,也有数据智能领域的新势力。事实上,架构的演进是由业务直接驱动的,如果业务侧提出了更高的性能要求,那么在大数据架构建设的过程中,就需要数据库架构建设上进行技术升级。“在数据分析领域,湖仓一体是未来。它可以更好地应对AI时代数据分析的需求,在存储形态、计算引擎、数据处理和分析、开放性以及面向AI的演进等方面,要领先于过去的分析型数据库。”以AI应用层面为例,湖仓一体架构天然适合AI类的分析(包括音视频非结构化数据存储,兼容AI计算框架,具有模型开发和机器学习全生命周期的平台化能力),也更适合大规模机器学习时代。就在前不久,Gartner发布了湖仓一体的未来应用场景预测:湖仓一体架构需要支持三类实时场景,第一类是实时持续智能;第二类是实时按需智能;第三类是离线按需智能,这三类场景将可以通过快照视图、实时视图以及实时批视图提供给数据消费者,这同样是未来湖仓一体架构需要持续演进的方向。从市场发展走向来看,“湖仓一体”架构是基于技术发展进程的必经之路。但由于这个新型开放架构仍处于发展早期,国内外企业数字化水平和市场认知的不同,造成了解决方案也存在着较大的差异。在业内投资人看来,“虽然美国的企业服务市场比我们成熟的多,也有很多路径可以参考,但中国市场却有着很多中国特色。美国企业服务市场往往卖产品就可以了,但中国大客户群体需要更与客户资深场景深度融合的解决方案,解决方案需要兼顾通用性和定制化。”比如某公司在保证前端数据正常运行、“热切换”底层应用的前提下,在短短几个月时间里将多个数仓整合为统一数仓,有效统一了业务口径,大幅缩减了开发运维工作量,整个业务价值链也形成了闭环。
这也是“湖仓一体”的能力价值所在:随着数据结构的逐渐多样性,3D图纸、直播视频、会议视频、音频等数据资料越来越多,为深度挖掘数据价值,依托于领先的湖仓一体技术架构,可先将海量的多模数据存储入湖,在未来算力允许时,及挖掘深度的业务分析场景后,从数据湖中抓取数据分析。举个简单的例子,某个设计师想要设计一款鞋子,一般会从历史数据中找有效信息参考,设计师也许只需要一张货品照片,就能像浏览电影般,了解到该商品多年来全生命周期的销售业绩、品牌故事、竞品分析等数据,赋能生产及业务决策,实现数据价值的最大化。一般来说,大体量的企业想要保持持续增长,往往需要依靠大量、有效的数据输出,进而实现智慧决策。很多企业出于 IT 建设能力的限制,导致很多事情没法做,但通过湖仓一体架构,让之前被限制的数据价值得以充分发挥,如果企业能够在注重数据价值的同时,并有意识地把它保存下来,企业就完成了数字化转型的重要命题之一。我们也有理由相信,随着企业数字化转型加速,湖仓一体架构也会有更为广阔的发展空间。下面这份文档介绍某公司提出的“湖仓一体”解决方案,旨在解决传统数据平台架构的局限性,并满足企业级数据分析的需求。
主要内容包括:
- 湖仓一体架构应具备数据湖和数据仓库的优势特性,并实现有机融合。
- “湖仓一体”体系架构:统一数据存储、统一数据计算、统一数据接口、统一资源管理。
- “湖仓一体”解决方案的核心思路:统一架构,采用云原生、多模存储等技术。
三、解决方案:湖仓一体解决方案
数据架构:统一数据集成平台、湖仓一体平台、数据治理平台。
技术架构:统一资源管理、统一分布式存储管理、统一分布式计算引擎、统一数据操作/数据接口。
数据流转:数据接入、存算数据、享用数据、数据管理。
四、湖仓一体的特点
- 云原生架构:容器化、微服务、DevOps、持续交付。
- 多模存储:支持10种数据模型,统一SQL入口,跨模型数据关联与转换。
- 统一架构:分布式存储、分布式数据管理系统、统一的资源管理框架、统一的计算引擎、统一的数据操作/查询语言。
- 全生命周期数据安全防护:数据采集、传输、存储、处理、销毁、流通等环节的安全防护。
- 1湖N仓多租户体系:支持多租户管理,满足不同用户的需求。
五、湖仓一体优势亮点
- 多模存储、技术创新、批流协同、统一SQL、弹性伸缩、信创自主、全栈工具、降本增效。
六、与开源/CDH/CDP湖仓一体技术方案的差异
- 开源方案未解决多分析处理场景下的割裂问题,未实现数据全融合。
- 阿里云和华为云方案需要多个组件配合,且湖和仓是割裂的,数据跨平台导入导出,开发运维成本高。