引言
自Snowflake架构诞生之后,该公司最高市值接近1000亿美金,Snowflake提出的计算、存储和元数据三层分离架构也引领了国内众多厂商的架构设计,我们能够看到:
Hashdata的3层架构:

南大通用GBase:

doris 2.x版本的架构,并且已经开源:

该架构核心设计思想大体如下:
-
把有状态的模块,例如元数据,事务管理,锁管理等,Snowflake甚至把执行计划缓存,query cache缓存都放到元数据层,计算和存储都变成无状态的服务,方便对计算和存储做弹性;
-
作为有状态的服务不太好实现serverless,为了降低大规模场景下元数据层的成本,都把元数据层做成多租户共享的服务。
在众多厂商尚未明确阐述元数据层独立后所面临的挑战和技术细节的情况下,Relyt AI-ready Data Cloud作为一个采用四层解耦架构(元数据、计算、缓存和存储)的云原生数据仓库,通过多年的技术沉淀和广泛的客户实践,积累了丰富的经验。本期,我们邀请了质变科技AI-ready数据云团队布道师、云原生领域资深人士元飞为大家分享话题《计算、存储和元数据三层分离架构下,元数据和事务系统的挑战和关键技术》。
在上述背景下,应该如何应对元数据层独立后的技术挑战?
-
保持与PostgreSQL生态系统产品的一致体验:我们致力于让客户能够像使用单机版PostgreSQL一样便捷地使用云原生数据仓库。虽然开源产品的用户对事务能力的要求不高,但闭源产品通常提供标准的ACID事务能力,这已成为闭源产品提升用户体验的关键竞争力之一。
-
远端存储与本地存储性能差异的解决方案:我们着力解决远端存储与本地存储之间的性能差距,旨在让用户的DDL操作和读写过程能够达到与使用本地数据库相同的延迟。特别是在TPC-H等场景下,我们实现了高吞吐量和低延迟的性能优化。
-
元数据管理的挑战:传统大数据的元数据管理相对简单,因为它们主要面向不可变的大文件。我们探讨了元数据层如何应对实时数据仓库中的实时小批量写入,以及高频的update/delete操作,还有高QPS的点查Servering场景。
-
面向未来的演进:我们探讨了如何向湖仓一体架构演进,实现数据的开放共享,并面向AI实现AI-Ready的挑战。
元数据层作为数据仓库的核心组成部分,我们将从Relyt AI-ready Data Cloud的实践经验出发,深入分析其中的关键设计和技术难题。
架构设计

-
元数据服务层包括两层:无状态服务层 & 可扩展分布式存储层。
-
无状态服务层:负责表、列、文件和统计信息的抽象,支持MVCC能力,能够提供一致的元数据视图,将KV结构封装为表API,方便多个DPS或应用服务的访问,DPS指代Relyt中一组计算资源,与Snowflake的virtual warehouse是一个概念;
-
可扩展的分布式存储层:基于 FoundationDB (简称FDB)作为持久化存储,提供安全、可靠、可扩展的基础存储服务能力。
这样设计的好处在于:
-
全局一致,多DPS统一元数据,update/delete跨DPS实时可见

最低0.47元/天 解锁文章
1227

被折叠的 条评论
为什么被折叠?



