「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 新一代云原生存储引擎

10 月 24 日程序员节,拓数派「OpenPie」发布了云原生数据库 PieCloudDB Database 社区版与企业版。通过重新打造云上的数据库内核,突破了 PC 时代计算平台的限制,实现云上存算分离。 PieCloudDB 基于云的基础设施,专为云平台打造。

本文整理自拓数派「OpenPie」2022 发布会的演讲,将为大家着重介绍 PieCloudDB 是如何构建新一代云原生存储引擎的。

PieCloudDB 在存储层的打造过程中,考虑到了数据的分布和集群的弹性,保证数据的安全性。 在设计存储引擎时,PieCloudDB 也充分考虑了查询优化器和执行器的演进,以完成分析型任务为基准,减少用户成本,提升读写性能, 并提供完备的事务支持。

Multi-Cloud 云上设施与现代硬件

PieCloudDB 中的存储引擎是面向云上对象存储而设计,其核心是数据共享和存算分离,云基础设施大大提升了存储的容量,并将数据共享给多个不同计算资源,弹性大大增加。PieCloudDB 存储引擎还兼容 HDFS 分布式存储系统,同时也支持运行在网盘和本地盘环境,来满足不同的私有云、公有云和混合云的部署。

为了充分利用现代硬件的性能,PieCloudDB 的存储引擎针对性的为现代 CPU 和 GPU 的高速缓存访问进行了设计,并且对数据的局部性进行了进一步优化以支持 SIMD 和并行计算。PieCloudDB 还计划针对现代存储技术和新硬件的使用提供支持和扩展。

「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 新一代云原生存储引擎_第1张图片

数据分布和弹性

考虑到 PieCloudDB eMPP(elastic MPP)的分布式设计,数据文件通过一致性 hash 分布在各个节点中,数据会最终持久化到云存储中。 一般来说,在同一集群内,写入数据的节点也是读取数据的节点,数据文件缓存在本地以减少延时较高的云存储的访问。这个设计减少了数据不必要的转移,并简化了 cache 的设计。

「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 新一代云原生存储引擎_第2张图片

计算节点是无状态的,当集群执行秒级扩容时,如果没有一致性 hash 的数据移动策略,新的计算节点中将没有缓存数据。在 eMPP 的架构下,由于” 木桶效应”,整体的查询时间由最慢的节点决定,因此这个新的节点将大大影响查询的执行效率。在一致性 hash 的保证下,每一个节点均移动大致相等的数据量到新的节点,一致性 hash 的均匀性保证了大部分本地缓存数据的有效性,减少了 cache miss,提升查询性能。

数据安全性

在安全方面 PieCloudDB 提供了坚实健壮的保障。针对于存储引擎中的数据安全这一方面,我们使用透明加密来对数据进行保护。在实现中使用了三层密钥结构,第一级密钥为主密钥负责对第二层密钥的加解密,第二级密钥为表密钥,负责对第三层密钥的加解密,第三级密钥为文件密钥,负责对数据文件加解密。在存储引擎中数据的读写会进行实时的加解密。

「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 新一代云原生存储引擎_第3张图片

用户成本(存储成本)

在设计 PieCloudDB 存储引擎时,我们充分的考虑到了用户的成本。在云上环境中,用户为查询付费,最大的开销是数据的存储成本。因此我们自动选取适应对应类型的编码进行 encoding,节约存储空间。

除此之外,PieCloudDB 还采用了压缩算法对数据进行进一步的压缩。在数据查询时,为了减少对象存储的访问开销,PieCloudDB 实现多级别的缓存机制节约成本。同时,这也可以提升查询的性能。

OLAP 性能

针对于分析型的场景,PieCloudDB 查询性能有丰富的优化。在存储这一层,使用了行列混合存储。在重组数据时,其具备行存的高效性能、列存的高压缩比、cache line 友好、可进行 SIMD 和并行计算的优势。

PieCloudDB 重新定义了数据在磁盘和内存中的表数据格式,使表中的数据在磁盘上和内存中的数据转换没有额外的成本和开销。所有的数据均能以 O (1) 的时间复杂度访问,适应随机访问和扫描工作负载。

在此之上,每一个文件块都包含了预计算和统计信息来加速查询。同时对于优化器来说,其使用对应数据表的统计信息来生成最终的执行计划。PostgreSQL 通常使用 ANALYZE 来抽样数据构建统计信息,如果统计信息不准确则无法生成高效的查询计划。在新的存储引擎中,PieCloudDB 使用更智能的方式以更快的速度来构造比抽样更准确的统计信息,辅助优化器生成高效的执行计划。

「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 新一代云原生存储引擎_第4张图片

PieCloudDB 新的存储引擎通过 block 文件级别的 MVCC 使其具备完整的事务支持,来服务各行各业的客户。每个文件块中的数据是否可见,通过查询其所在文件的 MVCC 信息以及当前的事务隔离级别来判断。

为了支持优化器和执行器的演进,存储引擎在实现时充分考虑到了执行器的向量化、文件查询裁剪和聚集下推扫描的支持。在查询时可减少海量数据的 IO 并加速计算,大大提升 OLAP 场景下的分析型任务的查询性能。

「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 新一代云原生存储引擎_第5张图片

存储是一款数据库的底座,PieCloudDB Database 将在存储引擎模块上持续迭代,不断演进,为用户的数据分析提供夯实的基座。


关于 PieCloudDB

PieCloudDB 是一款全新 eMPP 分布式技术云原生分析型数据库。通过重新打造云上的数据库内核,突破了 PC 时代计算平台的限制,实现云上存算分离。旨在为企业提供包含实时处理、秒级扩缩容、弹性计算、集成数据分析等强大功能的云上数据存储和计算引擎。在云上,计算资源可按需启动,对计算模型以更低成本提供指数级的存储和计算资源,帮助企业的业务模型发现新洞察或者提高精准度,从而建立竞争壁垒。目前,PieCloudDB 在金融,医疗,汽车及制造等行业积累了一批种子用户,产品备受业界及用户的高度关注及认可。

你可能感兴趣的:(PieCloudDB,拓数派,数据库,云原生)