趋势解读 | 从Databricks与Snowflake之争,再谈湖仓一体化架构

【导语】湖仓一体化这一新概念正在悄悄兴起,开始在实际项目和产品中落地,各方势力也纷纷响应。本文将结合最近的市场纷争进一步分析湖仓一体化的路径。

相关基本概念可回顾本文作者文章《从全域数据赋能的角度谈湖仓一体化》。

【作者】郑金辉

一、Databricks和Snowflake之争

2021年11月初,Databricks和Snowflake因TPC-DS测试结果正面开撕,掐得挺狠,双方创始人都亲自下场了,好久没看到这种名场面了。具体细节可百度。

Snowflake 是新生代的云上数仓的主导者之一,算是云数仓的主要推动者,目前已经实现了基于多公有云架构的云上数仓服务。Snowflake 是完全建立在云上的企业级数据仓库解决方案。Snowflake 是云原生的,因为它针对并基于云环境进行了根本性的重新设计,处理引擎和其他大部分组件都是从新开始开发的。Snowflake 通过提供高度分布式和可扩展的计算能力扰乱了数据仓库市场。

Databricks,是属于 Spark 的商业化公司,一直致力于提供基于 Spark 的云服务,打造了Delta Lake, 已将其能力大幅扩展至传统数据仓库的方向。Databricks正在打造Data Lakehouse,一种新颖的数据湖仓概念。

通过以上分析可以看出,Databricks 最初主要是一家数据湖公司,但一直在添加数仓功能。Snowflake 则是反过来的,作为一家数仓起家的公司,却一直忙于拥抱数据湖功能。

这说明什么?说明湖仓一体化已经成为不可逆的重要趋势,正如Databricks所说的那样:“从长远来看,所有数据仓库都将被纳入数据湖仓”。

二、湖仓一体化的主要特征

湖仓一体化,说起来简单,细究起来还是需要满足一些基本的条件:

  • 通过低成本的方式实现全量数据单一存储;
  • 提供高性能的数据引擎;
  • 支持存算分离,满足架构的敏捷性需求,通过可插拔存储框架实现架构的可扩展性;
  • 支持事务,保证事务的一致性;
  • 支持数据治理,提供数据质量保证。

同时,还要支持多种的工作负载场景,比如批流一体,批处理、即席查询、数据分析(BI)、机器学习(ML)等,实现多样化工作负载。只有具备以上这些特性,才可以说是一套真正的湖仓一体。

三、湖仓一体化的不同路径

通过上面的分析可以看出,从各家技术企业的原始积累出发,湖仓一体化也会有不同的路径,主要有两种方式:

  • 在数据仓库上支持数据湖 ,一般是通过在数仓中建外部表来实现,谈论的是数据仓库如何更加灵活,以数仓为核心,支持访问数据湖。以Snowflake为代表的,还包括阿里云的MaxCompute、亚马逊的Redshift;
  • 在数据湖中支持数仓能力 ,一般是通过功能性开发,比如多版本并发控制、自适应schema、提供文件级事务等等,来实现传统数仓的功能。以Databricks为代表。

体现在架构图上,第一种方式更像东西向架构,在数据仓旁边建立数据湖并实现湖仓的数据交互和联通;第二种方式更像南北向架构,需要在数据湖上构建数仓的服务层,强化数据治理和数据服务的提供。这两种方式没有优劣之分,适合自己才是最好的,需要根据自身的技术栈和数据需求进行选择和甄别。

无论哪种方式,都有一些共性的问题需要解决,比如不同数据域数据打通的问题、元数据一致性的问题、不同数据引擎交叉引用的问题和数据开发工具缺乏的问题。

目前多数企业还没有选择湖仓一体化架构,多数采用的是传统数仓架构,有的是已经构建了初步的数据湖系统。对于数据湖来说,适合还没形成完善的数据价值体系体系,在趋势的感召下,开始尝试数据汇聚,把组织范围内的数据统一汇聚到数据湖中,实现数据集约管理的初衷。这类用户很快就会发觉数据治理和数据管理会是一个比较麻烦的问题,需要在数据湖上面构建一层数据治理和管理服务层。对于传统数仓用户来说,如果采用数仓系统支持湖仓一体化,直接挂接一个数据湖就可以启动了,后续就是关注两域数据的数据打通和元数据的一致性问题。

此外还有大量的使用了传统Hadoop体系的大数据平台用户,重点关注数据源的扩展和数据治理体系的完善,在认清全量数据的基础上,再考虑启动湖仓一体化的时机和关键节点。

湖仓一体要大规模落地,对整个系统的设计维护要求非常高,整体技术成本也比较高,是自建还是全托管,一定要想清楚。

麦聪软件,全球领先DaaS(数据即服务)平台供应商,为企业构建下一代数据中台,500强企业中有30多家选择麦聪DaaS平台。

原题:从Databricks和Snowflake之争,再谈湖仓一体化架构;via,向云而生

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Databricks是一个基于云端的数据平台,它属于数据湖类型,但现在已经扩展到了湖仓一体化的范畴。与Snowflake类似,Databricks也具有自动扩展的功能,集群会根据单个查询和用户并发的实际使用情况,自动扩缩容。Databricks更多重视机器学习、数据科学和数据流使用案例。它支持多种开发语言,因此更适合数据工程师和数据科学家。 Databricks架构如下: 1. 数据湖存储:Databricks使用云端存储(如AWS S3、Azure Blob Storage)作为数据湖的存储层。数据可以以原始格式存储,包括结构化数据、半结构化数据和非结构化数据。 2. Databricks Runtime:Databricks Runtime是一个高度优化的运行环境,用于执行数据处理和分析任务。它包含了Apache Spark、Delta Lake和其他必要的库和工具。 3. Databricks Workspace:Databricks Workspace是一个协作环境,用于开发和管理数据工程和数据科学项目。用户可以在Workspace中创建和运行Notebook,编写代码、运行查询和可视化数据。 4. Databricks Cluster:Databricks Cluster是一个计算资源的集合,用于执行数据处理和分析任务。它可以根据需要自动扩缩容,以适应不同的工作负载。 5. Databricks Jobs:Databricks Jobs是用于调度和运行作业的功能。用户可以创建和调度作业,以在指定的时间或事件触发时运行数据处理和分析任务。 6. Databricks Delta:Databricks Delta是一个开源的数据湖引擎,用于管理和加速数据湖中的数据。它提供了ACID事务、数据版本控制和增量数据处理等功能,以提高数据湖的性能和可靠性。 7. Databricks MLflow:Databricks MLflow是一个开源的机器学习生命周期管理平台,用于跟踪、管理和部署机器学习模型。它提供了实验追踪、模型版本控制和模型部署等功能,以简化机器学习工作流程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值