「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 优化器

2023-11-13

10 月 24 日程序员节,拓数派(Openpie)发布了云原生数据库 PieCloudDB 。PieCloudDB 以云计算架构为设计基础, 实现云上存算分离,打造了 “元数据 - 计算 - 存储” 分离三层架构。 在计算层,PieCloudDB 设计了高效的查询优化器和执行器,实现了预计算、聚集下推等多种查询优化策略,保证查询的高效运行,减少用户等待时间。此外,PieCloudDB 的分区表技术可以通过一些策略把大表分拆成若干个小表,分区表可以使得查询的性能大幅提升。

本文整理自拓数派「OpenPie」2022 发布会的演讲,将为大家着重介绍 PieCloudDB Database 的优化器模块。

PieCloudDB 优化器是一个基于 eMPP 架构的云原生分布式优化器,可以为海量数据集上的复杂 OLAP 查询提供最优的查询计划。 它的特点可以用三个关键词来概括:

  • 分布式优化器
  • 处理复杂 OLAP 查询
  • 云原生优化器

分布式优化器

首先我们来看一下第一点:分布式优化器。PieCloudDB 是一款分布式数据库,在进行优化器设计时也充分考虑了 PieCloudDB 分布式架构的特点, 为分布式架构下的查询语句生成分布式的查询计划。这些分布式的查询计划,会被进一步分为多个更小的计划单元。这些计划单元被分发到不同的计算节点中并行执行,计算节点之间通过网络高速互联,从而利用分布式的优势以最好的性能产生最终结果。

处理复杂 OLAP 查询

第二个关键词是处理复杂 OLAP 查询。 PieClouldDB 作为一款能够处理 PB 级海量数据的分析型数据库,其优化器擅长处理复杂的分析型查询,主要但不限于以下几点:

  • 搜索多表连接的最优顺序

当查询中有多个表进行连接时,搜索其最优的连接顺序是一个公认的 NP-hard 问题。

PieCloudDB 优化器利用动态规划算法和有效的分枝裁剪技术,自底向上逐层构建出多表连接的最终结果,可以在有限时间内找到最优的连接顺序。

  • 多阶段聚集

聚集函数是分析型查询中常见的操作。PieCloudDB 优化器根据分布式的特点,会产生多阶段的聚集,每个阶段的聚集操作都可以在多个计算节点之间并行计算,达到最好的性能。

  • 分区表的静态裁剪和动态裁剪

分区表是分析型查询中常见的表结构,PieCloudDB 优化器可以利用分区规则,在静态产生查询阶段裁剪掉不需要的分区,同时在动态执行阶段,动态裁剪掉不需要的分区,从而可以有效的减少数据的扫描和计算

  • 相关子查询的提升转换

PieCloudDB 优化器会最大限度的把子查询提升转换为连接操作,而对于连接操作,PieCloudDB 优化器有大量的优化技术,从而把低效的子查询以高效的方式处理。

  • 通用表表达式(Common Table Expression,CTE)的优化

对于通用表表达式(Common Table Expression,CTE)和递归 CTE,PieCloudDB 优化器可以使其在不同进程间共享结果,使得分布式下的 CTE 语句可以高效执行。

云原生优化器

PieCloudDB 作为一款云原生数据库,其优化器也是一款专为云平台打造的云原生优化器。PieCloudDB 优化器针对云环境的特性,提供了更多高阶的优化,包括聚集下推、预计算、文件剪裁等。

  • 聚集下推

聚集下推是指通过把聚集操作下推到连接操作之前去执行,可以极大的减少连接操作需要处理的数据量,使得查询性能显著提升。根据我们的测试,在很多场景下,聚集下推会取得百倍或千倍的性能提升

  • 预计算

预计算。根据对象存储的特性,为每一个数据块预先计算好块内数据的聚集值。通过把聚集操作下推到对数据表的扫描之上,可以直接利用数据块内预计算的结果,这样就避免了对数据块内所有数据的扫描操作以及块内数据的聚集计算操作,可以极大的提高查询的性能。

  • 文件裁剪

文件裁剪。利用每个数据块内预计算的结果,结合查询语句中的过滤条件,可以提前过滤掉不符合条件的数据块,从而减少对数据的扫描和后续的计算。

如果有一款好的优化器,一个分析型数据库产品就成功了一半。PieCloudDB Database 将在优化器模块不断前行,为用户提供更多优化功能,提升分析性能。


关于 PieCloudDB

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

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 优化器 的相关文章

  • 跨境电商三大趋势已经涌现

    在过去的几年里 跨境电商在推动外贸增长中发挥了至关重要的作用 成为了引领行业发展的强大引擎 然而 随着2024年的到来 跨境电商行业又站在了崭新的起点 准备攀登新的发展高峰 数据显示 得益于经济的逐步复苏 未来三年跨境电商行业预计将以16
  • 【计算机开题报告】基于JSP的服装店销售管理系统

    1 选课目的意义 21世纪是一个信息化时代 随着中国经济的发展和人民生活水平的提高 服装商场的普及程度日益增大 竞争也在逐渐白炽化 为了进一步提高服装商场的经营效率 在服装店销售管理中引入计算机管理系统成为了必然的选择 由于中国环境的特殊性
  • sql临时表、创建虚拟表、select临时表、多行数据、自定义数据、插入数据

    SELECT FROM VALUES John 25 Jane 30 Mike 35 AS table name name age 方法2 select 1 2 union all select 3 4
  • 【计算机开题报告】图书管理系统

    一 选题依据 简述国内外研究现状 生产需求状况 说明选题目的 意义 列出主要参考文献 国内外研究现状 国外研究现状 在很多发达国家 图书管理系统的应用和技术发展已经相对完善 并且还建立了数字图书馆 各方面的情况也非常成熟 而图书管理的应用价
  • ERROR 5025 (HY000): Insert has filtered data in strict mode, tracking_url=http://IP

    通过http api批量插入数据的时候报Reason null value for not null column column xxx src line 解决方法 检查是否有null值存在 增加数据库字段长度 如下语句更改长度 ALTER
  • Kali Linux 安全渗透核心总结,444页核心知识点

    就像IT人离不开Linux系统一样 网安人也离不开Kali Linux 作为攻击性防御和渗透测试的代名词 越来越多的人开始学习Kali 如果你也对kali感兴趣 又想深入了解这方面内容 不妨收藏一下这份Kali Linux安全渗透教程 共4
  • SQL 解析与执行流程

    一 前言 在先前的技术博客中 我们已经详细介绍过数据库的 parser 模块与执行流程 用户输入的 SQL 语句通过词法解析器生成 token 再通过语法分析器生成抽象语法树 AST 经过 AST 生成对应的 planNode 最后执行 p
  • 6 - 数据备份与恢复|innobackupex

    数据备份与恢复 innobackupex 数据备份与恢复 数据备份相关概念 物理备份与恢复 逻辑备份 推荐 使用binlog日志文件实现对数据的时时备份 使用日志 恢复数据
  • 【计算机毕业设计】病房管理系统

    当下 如果还依然使用纸质文档来记录并且管理相关信息 可能会出现很多问题 比如原始文件的丢失 因为采用纸质文档 很容易受潮或者怕火 不容易备份 需要花费大量的人员和资金来管理用纸质文档存储的信息 最重要的是数据出现问题寻找起来很麻烦 并且修改
  • 【计算机毕业设计】北工国际健身俱乐部

    本系统为会员而设计制作北工国际健身俱乐部 旨在实现北工国际健身俱乐部智能化 现代化管理 本北工国际健身俱乐部管理自动化系统的开发和研制的最终目的是将北工国际健身俱乐部的运作模式从手工记录数据转变为网络信息查询管理 从而为现代管理人员的使用提
  • 【计算机毕业设计】趵突泉景区的智慧导游小程序_5ztvv

    当今社会已经步入了科学技术进步和经济社会快速发展的新时期 国际信息和学术交流也不断加强 计算机技术对经济社会发展和人民生活改善的影响也日益突出 人类的生存和思考方式也产生了变化 传统趵突泉景区的智慧导游采取了人工的管理方法 但这种管理方法存
  • 【计算机毕业设计】微信小程序反诈科普平台

    相比于以前的传统手工管理方式 智能化的管理方式可以大幅降低反诈科普平台的运营人员成本 实现了反诈科普平台的标准化 制度化 程序化的管理 有效地防止了反诈科普平台的随意管理 提高了信息的处理速度和精确度 能够及时 准确地查询和修正反诈科普 一
  • 【计算机毕业设计】白优校园社团网站的设计与实现

    近些年 随着中国经济发展 人民的生活质量逐渐提高 对网络的依赖性越来越高 通过网络处理的事务越来越多 随着白优校园社团网站的常态化 如果依然采用传统的管理方式 将会为工作人员带来庞大的工作量 这将是一个巨大考验 需要投入大量人力开展对社团
  • 【计算机毕业设计】宝鸡文理学院学生成绩动态追踪系统

    研究开发宝鸡文理学院学生成绩动态追踪系统的目的是让使用者可以更方便的将人 设备和场景更立体的连接在一起 能让用户以更科幻的方式使用产品 体验高科技时代带给人们的方便 同时也能让用户体会到与以往常规产品不同的体验风格 与安卓 iOS相比较起来
  • 做测试不会 SQL?超详细的 SQL 查询语法教程来啦!

    前言 作为一名测试工程师 工作中在对测试结果进行数据比对的时候 或多或少要和数据库打交道的 要和数据库打交道 那么一些常用的sql查询语法必须要掌握 最近有部分做测试小伙伴表示sql查询不太会 问我有没有sql查询语法这一块的文档可以学习
  • Kubernetes (十一) 存储——Secret配置管理

    一 简介 从文件创建 echo n admin gt username txt echo n westos gt password txt kubectl create secret generic db user pass from fi
  • 30天精通Nodejs--第二十天:express-操作mysql

    目录 前言 安装依赖并配置MySQL连接 安装mysql2库 配置连接信息 在Express应用中使用MySQL 结合Express路由实现CRUD操作 整合到主应用 结语 前言 在Node js中使用Expre
  • MongoDB - 库、集合、文档(操作 + 演示 + 注意事项)

    目录 一 MongoDB 1 1 简介 a MongoDB 是什么 为什么要使用 MongoDB b 应用场景 c MongoDB 这么强大 是不是可以直接代替 MySQL d MongoDB 中的一些概念 e Docker 下载 1 2
  • 温室气体排放更敏感的模型(即更高的平衡气候敏感性(ECS))在数年到数十年时间尺度上也具有更高的温度变化(Python代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Python代码 数据
  • 光波导结构

    摘要 增强现实和混合现实 AR MR 领域的新应用引起了人们对带有光栅区域的光波导系统的越来越多的关注 这些光波导系统用于输入和输出耦合以及扩瞳目的 VirtualLab Fusion为这类系统的仿真和设计提供了几个强大的工具 其中一个是具

随机推荐

  • 50个知名的开源网站

    1 http snippets dzone com tag c 数以千计的有用的C语言源代码片段 2 http www hotscripts com category c cpp scripts programs Hotscripts 提供
  • Python 文件的读写操作

    文章目录 1 文件对象 1 1 文件打开方式 1 1 1 打开文件 1 1 2 关闭文件 1 1 3 访问模式 1 2文件读取 1 2 1 read 1 2 2 readline 1 2 3 readlines 1 3 文件迭代 1 4 文
  • 最短路径:迪杰斯特拉算法

    算法步骤 1 初始化 1 将源点v0加到S中 即S v0 true 2 将v0到各个终点的最短路径长度初始化为权值 即D i G arcs v0 vi vi属于V S 3 如果v0和顶点vi之间有弧 则将vi的前驱置为v0 即Path i
  • 硬件系统工程师宝典(28)-----关于LDO,应该知道的事

    各位同学大家好 欢迎继续做客电子工程学习圈 今天我们继续来讲这本书 硬件系统工程师宝典 上篇我们说到BJT配合MOSFET控制电源开关的四种电路以及MOSFET的均流电路 今天我们来讲讲LDO的应用分析 LDO的结构 LDO Low Dro
  • XML格式数据集转TXT(YOLO)

    我从网上下载了一个数据集 underwater 它们提供了xml格式的数据 但是我想用yolov5进行训练 所以需要将xml格式转化为txt格式 正常的xml格式的数据集可以参考 目标检测中将已有的 xml数据集转换成 txt数据集 附代码
  • 深入浅出VA函数的使用技巧

    深入浅出VA函数的使用技巧 作者 钟小兵 发文时间 2005 04 11 本文主要介绍可变参数的函数使用 然后分析它的原理 程序员自己如何对它们实现和封装 最后是可能会出现的问题和避免措施 VA函数 variable argument fu
  • MySQL——模糊查询(LIKE关键字与通配符:百分号%和下划线_的使用和理解)——(运用场景+通俗易懂)

    使用mysql模糊查询主要点 LIKE关键字和这两个通配符配合使用 任意一个字符 任意0或多个字符 那么我们立即上手吧 一 使用LIKE和通配符 场景1 我要搜索一个名字 可我都忘记叫什么了 只知道是3个字符的 那怎么搜索呢 三个下划线 代
  • elasticsearch7.9 修改指定JDK

    错误 future versions of Elasticsearch will require Java 11 your Java version from usr local nlp java jdk1 8 0 162 jre does
  • 大致解决 Ubuntu 18.04 系统启动极慢的问题

    早在一两个月之前就想升级到 18 04 或是 18 10 了 然而那会儿用 LiveCD 测试得速度实在是慢 启动要很久 干脆没过多纠缠 旧暂时不管了 现因实际需要 不得不升级系统 以便获取到更新的软件包 从 17 10 向上升级很方便 直
  • hdoj 题目分类

    1001 整数求和 水题 1002 C语言实验题 两个数比较 水题 1003 1 2 3 4 5 简单题 1004 渊子赛马 排序 贪心的方法归并 1005 Hero In Maze 广度搜索 1006 Redraiment猜想 数论 容斥
  • 论文笔记——CVPR 2017 Annotating Object Instances with a Polygon-RNN

    文章主页 http www cs toronto edu polyrnn 1 简介 文章作者基于深度学习提出一种半自动目标事例标注 semi automatic annotation of object instances 的算法 大多数前
  • @property基本概念

    1 什么是 property property是编译器的指令 什么是编译器的指令 编译器指令就是用来告诉编译器要做什么 property会让编译器做什么呢 property 用在声明文件中告诉编译器声明成员变量的的访问器 getter se
  • maven自定义archetype

    在开发过程中我们经常会创建一系列结构类似的新项目 这些项目结构和基础配置基本或完全一致 maven就提供了archetype类型来规定新建项目的结构及基础配置 利用archetype就可以快速简单的搭建新项目 一 创建Maven项目的一般步
  • 网络安全笔记7——防火墙技术

    网络安全笔记7 防火墙技术 参考课程 中国大学MOOC 网络安全 北京航空航天大学 文章目录 网络安全笔记7 防火墙技术 防火墙概述 防火墙的类型及结构 防火墙的发展史 防火墙的分类 OSI模型与防火墙的关系 静态包过滤防火墙 操作 工作原
  • es的配置文件(elasticsearch.yml)

    config目录下有2个配置文件 es的配置文件 elasticsearch yml 和日志配置文件 logging yml cluster name elasticsearch 配置es的集群名称 默认是elasticsearch es会
  • arduino IDE搭建ESP8266开发环境和简单使用

    arduino IDE搭建ESP8266开发环境和简单使用 文章目录 arduino IDE搭建ESP8266开发环境和简单使用 安装 下载IDE 在Arduino IDE上安装esp8266库 下载安装esp8266库 使用 选择开发板
  • Java进阶3 - 易错知识点整理(待更新)

    Java进阶3 易错知识点整理 待更新 该章节是Java进阶2 易错知识点整理的续篇 在前一章节中介绍了 ORM框架 中间件相关的面试题 而在该章节中主要记录关于项目部署中间件 监控与性能优化等常见面试题 文章目录 Java进阶3 易错知识
  • 使用mybatis-plus的insert方法遇到的坑(添加时id值不存在异常)

    在使用mybatis plus的insert方法的时候 报错 java sql SQLException Field id doesn t have a default value 后来了解到使用mybatis plus的insert方法
  • 05-2_Qt 5.9 C++开发指南_Model/View结构实例(QFileSystemModel、QStringListModel、QStandardItemModel;编程实例)

    接上篇 本篇主要介绍Model View框架下的模型类 QFileSystemModel QStringListModel QStandardItemModel的使用方法和编程实例 文章目录 1 QFileSystemModel 1 1 Q
  • 「拓数派(OpenPie)2022 发布会实录 」PieCloudDB Database 优化器

    10 月 24 日程序员节 拓数派 Openpie 发布了云原生数据库 PieCloudDB PieCloudDB 以云计算架构为设计基础 实现云上存算分离 打造了 元数据 计算 存储 分离三层架构 在计算层 PieCloudDB 设计了高