首页 > 数据库 >数仓虚拟化技术:PieCloudDB Database 通过中国信通院 2023 「可信数据库」性能评测的强力支撑

数仓虚拟化技术:PieCloudDB Database 通过中国信通院 2023 「可信数据库」性能评测的强力支撑

时间:2023-12-02 14:04:53浏览次数:36  
标签:数仓 Database PieCloudDB 查询 数据 信通 优化 连接 达奇

“可信数据库”是国内首个数据库的评测体系,被业界广泛认可为产品能力重要的衡量标准之一。PieCloudDB Database 在该评测中展现出卓越的数据处理速度、稳定性和可扩展性,为用户提供了强大的数据分析和查询能力。

6 月 15 ~ 16 日,中国信通院 2023 上半年“可信数据库”评测专家评审会圆满结束,经过现场测试、产品资料审核、测试报告审核、质询与答疑、集中评议等多个评审环节,共计 28 家企业的 33 款产品通过本次评审。拓数派首款数据计算引擎 PieCloudDB 云原生虚拟数仓凭借优异的能力表现通过评测,获得分布式分析型数据库性能测试证书。

数仓虚拟化技术:PieCloudDB Database 通过中国信通院 2023 「可信数据库」性能评测的强力支撑_查询优化

 



云原生虚拟数仓 PieCloudDB 的性能创新之路

PieCloudDB 的卓越性能源于其创新的架构和先进的技术设计。PieCloudDB 实现了云上的存算分离、数仓虚拟化以及高性能的存储和计算能力,为用户提供了高效、可靠的海量数据处理、快速查询和分析的解决方案。

对于一款云原生虚拟数仓产品而言,性能是产品成功与否的一项非常重要的指标。PieCloudDB 团队开发了很多创新性技术,使得 PieCloudDB 不但具有云原生产品的灵活性和高可扩展性,而且在数据分析性能上也毫不逊色。



1 存储优化

PieCloudDB 在云上将元数据与用户数据分离,用户数据存放在公有云平台提供的对象存储(例如AWS S3),这样可以极大降低用户的数据存储成本。但是 S3 等对象存储存在局限性,例如读取数据的网络延时较大,不支持文件的随机读写等等。PieCloudDB 针对对象存储的优缺点重新设计了存储引擎简墨(JANM)。简墨的名字出自于“竹简墨书”,纵向的竹片被横向的连接起来,形成竹简,形象地说明了 PieCloudDB 行列混存的存储模式。简墨的独特设计既能利用 S3 的优势又通过一些措施克服了访问延迟和随机读写的劣势。

PieCloudDB 团队针对 OLAP 场景和云原生场景的特点对简墨进行了大量的优化。例如在数据块级别进行统计信息收集,在查询时可以利用统计信息实现 Data Skipping 和查询优化;针对 SUM、COUNT 等聚集函数进行预计算等;优化存储格式以实现透明数据加密(TDE)、高效数据压缩、Cache 友好等特性。

除了以上特性之外,简墨在设计过程中也充分考虑了如何利用现代 CPU 和 GPU 的架构特点,进一步支持 SIMD、SIMT 指令集来数据访问提高效率。



2 数据访问优化

简墨可以说是一款云原生数据存储引擎,对公有云平台的对象存储进行了大量的优化。但是在数据访问过程中,网络延迟一直是一个无法忽视的因素。如何提高数据的访问速度,这也是 PieCloudDB 架构设计过程中解决的一个重要问题。

PieCloudDB 针对数据访问加速做了大量的工作:

2.1 数据缓存

使用缓存是加速数据访问的常用措施,PieCloudDB 实现了本地缓存,更加高效的分布式缓存也在规划中;此外,PieCloudDB 还针对数据的访问频率对缓存实现了“冷”、“温”、“热”的分级管理。 

2.2 使用一致性哈希算法提高缓存命中率

PieCloudDB 实现了本地缓存,因此可能会发生跨节点读取缓存数据情况,为了避免跨节点的缓存读写,PieCloudDB 实现了一致性 Hash 存储缓存文件,提高缓冲的命中率。

2.3 使用 Data Skipping 精确加载数据

Data Skipping(Block Skipping)可以跟进预先计算数据统计信息从而判断数据块中是否有需要的数据,从而跳过不包含所需数据的数据块。

2.4 S3 访问通用优化

并行化读取数据、预读取数据、异步读取数据等。



3 强大的查询优化器

如果说高效的数据访问是硬币的一面,那么强大的查询优化器则是硬币的另一面。对于一款云原生数仓产品来说,强大的查询优化器也是产品成功的一个重要方面。如何把用户复杂的 OLAP 场景的复杂 SQL 转换成高效的查询计划,是查询优化器的首要任务。

PieCloudDB 团队打造了分布式查询优化器”达奇”,对用户的 SQL 查询进行全链路优化。PieCloudDB 查询优化的处理过程一般被分为四个阶段:预处理阶段,扫描/连接优化阶段,扫描/连接之外的优化阶段,后处理阶段。

3.1 预处理阶段

在预处理阶段,化器「达奇」会通过逻辑上的等价变化,将查询树转换为更加简单高效的等式,除了常见的谓词下推之外,达奇优化器添加了大量的 SQL 语句改写,例如:

  • 把 IN, EXISTS 等类型的子查询转换为半连接
  • 把 FROM 关键字后面的子查询提升为 JOIN
  • 把外连接(OUTER JOIN)转换为内连接(INNER JOIN)/反连接(ANTI JOIN)
  • 分发约束条件
  • 构建等价类
  • 收集外连接信息
  • 消除无用连接
  • 简化表达式

3.2 扫描连接阶段

在这一阶段,优化器「达奇」的处理主要可以分为两步。首先会为基表生成扫描路径,并计算扫描路径的代价和结果集大小,从而获得后面连接操作的代价。第二个步骤中,「达奇」会搜索整个连接顺序空间,为连接操作生成最优的连接路径。这一步骤的复杂度非常高,PieCloudDB 采用了动态规划和遗传算法两个算法来进行处理,并根据 GUC 值进行算法选择。如果查询语句中涉及外连接,考虑到外连接对连接顺序的限制,无法像内连接那样随意切换连接顺序,会加大这一步骤的复杂度。

3.3 扫描/连接之外的优化阶段

这一阶段,「达奇」会先处理 GROUP BY、聚集、窗口函数、DISTINCT,再对集合操作进行处理,最后再处理 ORDER BY。以上的每一步操作都会产生一个或多个路径,「达奇」会对这些路径根据代价大小进行筛选,并为筛选出的路径添加 LockRows,Limit,ModifyTable。

3.4 后处理阶段

经过前面三个阶段,「达奇」已经生成了一个大概的查询计划。在后处理阶段,「达奇」会把选出的最优路径转换为查询计划,并对最优计划进行一些调整。

值得一提的是,拓数派凭借在云原生虚拟数仓的突出成果和优异表现,参与了于 2023 可信数据库发展大会上发布的《数据库发展研究报告(2023)》的编写工作,并成功入选了《中国数据库产业图谱(2023)》。

数据库是复杂的系统软件,分布式数据库则更是让软件的复杂性“更上一层楼”,因此构建高效的分布式云原生数据库可以说是难上加难。PieCloudDB 获得的成绩充分说明了业界对 PieCloudDB 性能的认可。

 


 

数仓虚拟化技术:PieCloudDB Database 通过中国信通院 2023 「可信数据库」性能评测的强力支撑_查询优化_02

 

 

标签:数仓,Database,PieCloudDB,查询,数据,信通,优化,连接,达奇
From: https://blog.51cto.com/u_16396625/8654995

相关文章

  • 拓数派入选中国信通院“铸基计划”「高质量数字化转型产品及服务全景图」
    7月27日,由中国信息通信研究院(以下简称“中国信通院”)主办的“2023数字生态发展大会”暨中国信通院“铸基计划”年中会议在京召开,本次大会深度展示了中国信通院在数字化领域的工作成果,并正式发布了《高质量数字化转型产品及服务全景图(2023上半年度)》。拓数派凭借在数据计算领域的卓......
  • 300 倍的性能提升!PieCloudDB Database 优化器「达奇」又出新“招”啦
    随着数字化进程的加快,全球数据量呈指数级增长,对数据库系统的性能提出了巨大的挑战。优化器作为数据库管理系统中的关键技术,对数据库性能和效率具有重要影响,它通过对用户的查询请求进行解析和优化来生成高效的执行计划,进而快速返回查询结果。然而,同一条SQL语句在不同的优化决策下......
  • 领先一步,效率翻倍:PieCloudDB Database 预聚集特性让查询速度飞起来!
    在大数据时代,如何有效地管理和处理海量数据成为了企业面临的核心挑战。为此,拓数派推出了首款数据计算引擎PieCloudDBDatabase,作为一款全新的云原生虚拟数仓,旨在提供更高效、更灵活的数据处理解决方案。PieCloudDB的设计理念源于对用户使用体验和查询效率的深度理解。在实现存算......
  • PieCloudDB Database 自研内存管理器 ASanAlloc:为产品质量保驾护航
    内存管理是计算机科学中至关重要的一部分,它涉及到操作系统、硬件和软件应用之间的动态交互。有效的内存管理可以确保系统的稳定性和安全性,提高系统运行效率,帮助我们最大限度地利用有效的内存资源,合理分配和回收内存,预防各类内存错误。在计算机科学的早期,内存管理是由程序员手动完成......
  • PieCloudDB Database 再次升级!社区版全新版本发布,免费下载
    10月24日,2023拓数派年度技术论坛在上海圆满落幕。拓数派正式发布大模型数据计算系统「πDataCS」,基于云原生技术重构数据存储和计算,重塑数仓、向量和机器学习等数据计算引擎,实现“一份数据存储,多引擎数据计算”。作为πDataCS首款计算引擎,PieCloudDBDatabase再度升级,推出全新......
  • 【PostgreSQL 数据库线下沙龙(武汉站)】PieCloudDB Database :云原生分布式虚拟数仓的诞
    2023年6月3日,开源软件联盟PostgreSQL中文社区在武汉举办了技术沙龙活动。本次活动主题围绕未来数据库展开讨论和分享。通过探讨未来数据库的概念和特点,为智能化时代的发展提供更多的支持和服务。同时,通过探讨数据库和AI技术的共生共荣,推动数字经济的发展和创新,开创未来数据库的新......
  • 【PostgreSQL 数据库技术峰会(成都站)】云原生虚拟数仓 PieCloudDB Database 的架构和关
    2023年6月17日,中国开源软件推进联盟PostgreSQL分会在成都举办了数据库技术峰会。此次峰会以“新机遇、新态势、新发展”为主题,结合当下信创热潮、人工智能等产业变革背景,探讨PostgreSQL数据库在这些新机遇下的发展前景。峰会邀请众多行业大咖、学术精英、技术专家、技术爱好者......
  • 「拓数派(OpenPie)2022发布会实录 」PieCloudDB Database元数据管理
    10月24日程序员节,拓数派(Openpie)发布了云原生数据库PieCloudDB。PieCloudDB以云计算架构为设计基础,实现云上存算分离,打造了“元数据-计算-存储”分离三层架构。传统MPP数据库的元数据与用户数据是紧密耦合的,元数据与用户数据解耦合是PieCloudDB作为一款云原生数据库的重要特征。......
  • 「拓数派(OpenPie)2022发布会实录 」PieCloudDB Database分布式引擎
    10月24日程序员节,拓数派发布了云原生数据库PieCloudDB社区版与商业版。本文整理自拓数派「OpenPie」2022发布会的演讲,将从PieCloudDBDatabase的计算、存储、事务三个方面来介绍分布式引擎模块。计算首先为大家介绍的方面是计算。PieCloudDB通过重新打造云上的数据库内核,突破......
  • 「拓数派(OpenPie)2022发布会实录 」PieCloudDB Database 新一代云原生存储引擎
    10月24日程序员节,拓数派「OpenPie」发布了云原生数据库PieCloudDBDatabase社区版与企业版。通过重新打造云上的数据库内核,突破了PC时代计算平台的限制,实现云上存算分离。PieCloudDB基于云的基础设施,专为云平台打造。本文整理自拓数派「OpenPie」2022发布会的演讲,将为大家着重介......