PostgreSQL 查询优化器解析
0 码力 | 37 页 | 851.23 KB | 1 年前3云原生数据库PieCloudDB 性能优化之路
郭峰 拓数派 云原生数据库PieCloudDB 性能优化之路 打造立足于国内 基础数据计算领域的世界级高科技创新驱动机构 杭州拓数派科技发展有限公司(又称“OpenPie”),以“Data Computing for New Discoveries”「数据计算,只为新发现」为使命, 成立后的短短10个月时间内,完成了包括头部产业基金、东吴证券、元 禾重元和政府科创平台在内的连续三轮战略融资。 PostgreSQL优化器简介 PieCloudDB优化器之分布式特性简介 PieCloudDB优化器之云原生特性简介 Q/A Contents 录 目 01 • 预处理阶段 • 通过逻辑上的等价变换,把查询树转换为更加简单高效的等式 • 分发约束条件,收集外连接信息等 • 扫描/连接优化阶段 • 主要处理扫描和连接操作 • 扫描/连接之外的优化阶段 • 主要处理除扫 主要处理除扫描和连接之外的其他操作,例如聚集、排序等 • 后处理阶段 • 主要把前面的处理结果转换成执行器期望的形式 • 简化表达式 • 简化连接树 • 把 IN,EXISTS 等类型的子查询转换为半连接 • 提升子查询 • 把外连接转换为内连接 • 把外连接转换为反连接 • 分发约束条件 • 构建等价类 • 收集外连接信息 • 消除无用连接 • … SELECT … FROM foo WHERE0 码力 | 26 页 | 711.44 KB | 1 年前3云原生虚拟数仓 PieCloudDB 的架构和关键模块实现
@2022 OpenPie. All rights reserved. OpenPie Confidential • Nosql本身对于高级分析支持差 o 图形,地理信息 • Nosql对于复杂查询的支持差 NoSQL和数据湖很难胜任数据分析的工作场景 @2022 OpenPie. All rights reserved. OpenPie Confidential • 使用数据湖为基础进 All rights reserved. OpenPie Confidential 计算引擎方面 • 完备的SQL语言支持 • 高效的分布式计算能力 • 完备的事务支持,隔离性 一致性 原 子性 公有云特性方面 • 存算分离 • 弹性的计算集群 • 只为必要的计算付费 @2022 OpenPie. All rights reserved. OpenPie Confidential OpenPie. All rights reserved. OpenPie Confidential • 全面的逻辑优化(谓词下推,子查询子链接提升,外连接消除) • 纯粹基于代价的物理优化 • 全面的数据分布特性描述,分布式代价估算,高效分布式表连接 • 多阶段的聚集 专门为复杂查询设计的优化器 分布式环境高效执行器 • 多阶段执行模型 • 流式数据重分布 @2022 OpenPie. All0 码力 | 43 页 | 1.14 MB | 1 年前3云时代下多数据计算引擎的设计与实现
Confidential @2024 OpenPie. All rights reserved. OpenPie Confidential janm 格式 行列混存(PAX) 为极致的数据计算而设计和优化 解析性能极致 (vs Parquet, etc) @2024 OpenPie. All rights reserved. OpenPie Confidential JANM: 大数据计算系 Spark 客户依赖 跑批任务 机器学习 …… ... 按需增加 @2024 OpenPie. All rights reserved. OpenPie Confidential 产品子功能 太多分支? • 抽象的⽂件协议接⼝ • 抽象的⽂件格式接⼝ • 抽象的计算功能接⼝(e.g. data skipping) • 抽象的元数据存储接⼝ • …… 抽象和灵活的考虑贯穿所有的设计 行处理,将来 HTAP 的 OLTP 用. @2024 OpenPie. All rights reserved. OpenPie Confidential 向量化 执行计算引擎 • SIMD深度优化 • 核心分析型计算算子完成 • 大量高杠杆率计算特性计划或者进行中 • runtime filter • low-cardinality string aggregation • late0 码力 | 15 页 | 3.09 MB | 1 年前3PieCloudDB Database 产品白皮书
大的运维和时间成本,且操作繁 琐。 木桶效应 传统 MPP 数据仓库架构存在“木桶效应”,集群整体执行速度取决于最“短板的”节点的性能。因此,一个节点的 表现往往会 “拖幸”整个集群的性能,导致查询速度变慢。 随卷时间的推移,业务的增长,企业往往需要在1-2年后 对集群增加计算节点,此时,无论新的计算节点性能如何好,集群总体性能都会受制于老的节点。因此真实生产环境 中,常常见到客户在需要扩容时,采取重新新建集群的方式。 分布式技术,旨在为企业提供包含实时处理、 移级扩缩容、弹性计算、集成数据分析等强大功能的云上数据存储和计算引擎,助力企业实现数据价值最大化。 pieCloudDB 为企业构建坚如般石的虚拟数仓,以云资源最优化配置实现无限数据计算可能,基于新一代数仓虚拟 化,提供云数仓智能化解决方案,助力企业建立以数据资产为核心的竞争整垒。 Openpie | PiecloudDB 基于eMPP (弹性大规模并行计算) 并发、高可用以 及用户权限等功能; 2. 计算节点: 无状态节点 (包括 Coordinator 和 Executer) ,主要负责接收用户请求和数据计算,支持 动态弹性伸缩,提供数据查询 、执行计划、查询优化、数据加载、连接管理、并行计算以及资源隔离 等功能; 3. 存储节点; 存算分离架构,支持本地存储和云存储,推荐采用对象存储,提供数据压缩、数据加密、 多模存储以及多级缓存等功能; 40 码力 | 17 页 | 2.68 MB | 1 年前3云原生虚拟数仓PieCloudDB Database产品白皮书
成本,且操作繁 琐。 木 桶 效 应 传统 MPP 数据仓库架构存在“木桶效应”,集群整体执行速度取决于最“短板的”节点的性能。因此,一个节点的 表现往往会 “拖垮”整个集群的性能,导致查询速度变慢。 随着时间的推移,业务的增长,企业往往需要在1-2年后 对集群增加计算节点,此时,无论新的计算节点性能如何好,集群总体性能都会受制于老的节点。因此真实生产环境 中,常常见到客户在需要扩容时,采取重新新建集群的方式。 分布式技术,可将物理数仓整合到云原生数据 计算平台,根据数据授权动态创建虚拟数仓,按需灵活计算,打破数据孤岛,支撑更大模型所需的数据和计算。 PieCloudDB 为企业构建「坚如磐石」的虚拟数仓,以云资源最优化配置实现无限数据计算可能,基于新一代数仓虚 拟化,提供云数仓智能化解决方案,助力企业建立以数据资产为核心的竞争壁垒。 7 PieCloudDB 产品架构 PieCloudDB 整体架 2. 计算节点: 无状态节点(包括 Coordinator 和 Executer),主要负责接收用户请求和数据计算,支持 动态弹性伸缩,提供数据查询、执行计划、查询优化、数据加载、连接管理、并行计算以及资源隔离 等功能; 3. 存储节点: 存算分离架构,支持本地存储和云存储,推荐采用对象存储,提供数据压缩、数据加密、0 码力 | 17 页 | 2.02 MB | 1 年前3PieCloudDB Database V2.1 版本说明
少连接操作需要处理的数据量,使得查询性能显著提升。 • 实现了 Block Skipping 的优化机制:数据库运行查询语句时,通过计算每个块 (block)中列聚集信息,在执行期间跳过非必要的数据块,减少数据读取量提高查询性 能。 • 极速 Analyze(Smart Analyze): PieCloudDB 实现极速 Analyze,更快的生 成精确的查询规划统计信息,从而在查询时可以生成更优的查询计划。 • 可观察性增强:可得到更多的查询时系统的统计信息,包括元数据管理、S3 等。 • Vacuum 优化:在元数据层通过快速过滤不需要 vacuum 的数据,从而实现 vacuum 加速。 • 存储引擎 简墨(JANM) 异常处理的优化: 避免各种异常情况下数据残留。 • 简墨(JANM)分布式处理增强:更高效的元数据采集和分发,提升用户查询响 应时间,降低系统负载 dispatch 性能:此优化将动态的分配要 读取的文件给各个执行节点,降低查询的启动代价。 • 原生格式存储:在 HDFS/NAS 系统上支持原生存储格式。 • 对 Orca 的支持:PieCloudDB 支持查询优化器 Orca。Orca 是一款开源的、基 于 Cascades 模型的模块化查询优化器,帮助用户对 SQL 进行优化,生成高效的查询计 划。0 码力 | 3 页 | 257.15 KB | 1 年前3云原生数据库 PieCloudDB eMPP架构设计与实现
产品已经在⼀些⾦融、医疗等⾏业开始使⽤。 关于我 • 毕业于中国科技⼤学,AI相关专业 • 毕业 1 年后到现在⼀直从事底层基础软件开发,10多年开发经验 • 领域涉及到: • 代码级/算法级/系统级性能优化 • Linux/Unix内核和系统开发、虚拟化(芯⽚KVM⽀持实现)和云计算架 构、⾼速⺴络开发(内核和应⽤层如DPDK) • 分布式系统(SQL/NoSQL/存储) • 最近 7+ 年⼀直从事开源分布式数据库开发 减轻FoundationDB集群负担 • 加速查询优化(⺴络延迟远⾼于内存延迟) • 以Postgres原⽣的元数据缓存概念为基础,优化重构实现适⽤于 多集群架构 ⽤户数据存储引擎 • PAX(⾏列混存)配以⾼效压缩 • Block⽂件为⼀个存储(MVCC)单位 • 辅助信息存储⽤于计算优化 • 设计考虑: • ⾼效和精准的统计信息收集 • 存储和计算成本 • 各种计算优化 • SIMD, Cache Skipping (本地查询和远程读取) • 预聚集 • ...... 存储中⽴ • 公有云,私有云,混合云 • 对象存储 (数据共享,存算分离)按需付 费 • 也⽀持HDFS,NAS ⽤户数据可靠安全 • ⽤户数据⾼可靠实时加解密 (TDE) • 分布式对象存储多副本多可⽤区保证数据安全:“⼀份”数据, 避免数据不⼀致 • 将来Time Travel查询“回收站”数据 ⽤户数据查询效率优化0 码力 | 31 页 | 1.43 MB | 1 年前3πDataCS赋能工业软件创新与实践
计算三者互为增强,全面升级⼤数据系统⾄⼤模型时代 ,赋能⾏业AI场景应用。 具备整体数据平台⽅案,支持多模数据处理(结构化、半结构化 以及非结构化数据),实现数据共享和分析。 软件优化 + 新硬件(FPGA)加速,实现数据全链路的性能飞跃, 让数据存储、SQL查询、向量计算以及机器学习等能⼒全面升级。 @2024 OpenPie. All rights reserved. OpenPie Confidential • TDE技术保证了所有数据在落盘前完成加密,服务 器⽆感知技术(Serverless)利用云上⽆限计算资源 和弹性保证了虚拟数仓永远在线可用,S3存储和跨 云灾备能⼒保证了永不丢数。 数据计算资源按需扩缩容,实现计算资源配置最优化, 提升数仓的敏捷性和弹性,打开⽆限数据计算空间, 支撑更⼤模型所需的数据和计算。更好地赋能业务发 展并⾛向绿⾊。 降低数仓硬件和管理成本 提升数据计算资源利用效益 坚如磐⽯ | ⾼安全 ⾼在线 C l o u d D B 技 术 突 破 : 数 仓 虚 拟 化 云原⽣存算分离架构 运用元数据-计算-数据分离的三层架构,实现云上存储资源与 计算资源的独立管理。云上计算资源可弹性分配,有查询计 算任务的时候按需启动,按照使用时间和规模计算成本。 eMPP分布式专利技术 在云上,PieCloudDB利用eMPP(elastic Massive Parallel Processi0 码力 | 36 页 | 4.25 MB | 1 年前3PieCloudDB 的云原生之路
数据 计算 发现 数据:云上数据既是隔离也是连通。从安全的角度是隔离,同时具 备数据共享的能力。 例如:投资管理系统和财务管理系统可以各自管理,按需分享。 计算:云上计算资源可以弹性分配。有查询计算任务的时候按需启动, 按照使用时间和规模计算成本,而不是购买大量服务器静置为不确定 的使用额外支付成本。 发现:在云上,对计算模型以更低成本提供指数级的存储和计算资源, 帮助甲方的业务模 技术保证了所有数据在落盘前完成加密,服务 器无感知技术(Serverless)利用云上无限计算资 源和弹性保证了虚拟数仓永远在线可用,S3 存储和 跨云灾备能力保证了永不丢数。 数据计算资源按需扩缩容,实现计算资源配置最优化, 提升数仓的敏捷性和弹性,打开无限数据计算空间, 更好地赋能业务发展并走向绿色。 降低数仓硬件和管理成本 提升数据计算资源利用效益 坚如磐石 | 高安全 高在线 高可靠 突 破 性 创 新 IvorySQL开源数据库社区 PieCloudDB 技术突破:数仓虚拟化 云原生存算分离架构 运用元数据-计算-数据分离的三层架构,实现云上存储资源 与计算资源的独立管理。云上计算资源可弹性分配,有查询 计算任务的时候按需启动,按照使用时间和规模计算成本。 eMPP 分布式专利技术 在云上,PieCloudDB 利用 eMPP(elastic Massive Parallel Proce0 码力 | 47 页 | 1.80 MB | 1 年前3
共 20 条
- 1
- 2