云原生数据库 PieCloudDB eMPP架构设计与实现辅助信息存储⽤于计算优化 • 设计考虑: • ⾼效和精准的统计信息收集 • 存储和计算成本 • 各种计算优化 • SIMD, Cache Line • Data Skipping (本地查询和远程读取) • 预聚集 • ...... 存储中⽴ • 公有云,私有云,混合云 • 对象存储 (数据共享,存算分离)按需付 费 • 也⽀持HDFS,NAS ⽤户数据可靠安全 • ⽤户数据⾼可靠实时加解密 ⽤户数据⾼可靠实时加解密 (TDE) • 分布式对象存储多副本多可⽤区保证数据安全:“⼀份”数据, 避免数据不⼀致 • 将来Time Travel查询“回收站”数据 ⽤户数据查询效率优化 • 远程访问数据要考虑的点:性能和成本 • 如何解决? • 数据和/或辅助信息缓存,同时⼀致性Hash减少数据移动 • 读取优化(⽐如异步并⾏等) • 计算优化(各种功能特性持续优化中) • 很多复杂O0 码力 | 31 页 | 1.43 MB | 1 年前3
PieCloudDB Database 社区版集群安装部署手册 V2.1环境和对象存储,请选择第三章节《PieCloudDB 基于已有 K8S 的部署方案》 2. PieCloudDB 和 K8S 一起部署方案 2.1 配置 NTP 同步 用 root 用户在每个节点执行如下命令: 1. yum install -y chrony 2. systemctl enable chronyd 3. systemctl start chronyd 4. timedatectl 2 关闭防火墙 用 root 用户在每个节点执行如下命令: 1. iptables -F 2. systemctl status firewalld 3. systemctl stop firewalld 4. systemctl disable firewalld 2.3 更新系统包和依赖包 用 root 用户在每个节点执行如下命令: 1. yum update install -y conntrack-tools 6. yum erase -y podman buildah ##KylinOS 必须先执行移除 7. yum remove -y docker-runc ##KylinOS 必须先执行移除 8. yum -y install gcc 9. yum -y install gcc-c++ 10. yum remove docker0 码力 | 42 页 | 1.58 MB | 1 年前3
PieCloudDB Database 产品白皮书 益增长,面临数据库的扩 容和升级时,由于传统数据仓库架构存储和计算的紧密耦合,往往需要企业花费巨大的运维和时间成本,且操作繁 琐。 木桶效应 传统 MPP 数据仓库架构存在“木桶效应”,集群整体执行速度取决于最“短板的”节点的性能。因此,一个节点的 表现往往会 “拖幸”整个集群的性能,导致查询速度变慢。 随卷时间的推移,业务的增长,企业往往需要在1-2年后 对集群增加计算节点,此时,无论新的计 集群并发、高可用以 及用户权限等功能; 2. 计算节点: 无状态节点 (包括 Coordinator 和 Executer) ,主要负责接收用户请求和数据计算,支持 动态弹性伸缩,提供数据查询 、执行计划、查询优化、数据加载、连接管理、并行计算以及资源隔离 等功能; 3. 存储节点; 存算分离架构,支持本地存储和云存储,推荐采用对象存储,提供数据压缩、数据加密、 多模存储以及多级缓存等功能; 采用高效并行的方式进行数据加载和处理,处理速度随节点增加而提升,支持流数据快速加载。 PieCloudDB 的eMPP (弹性大规模并行计算) 架构让数据计算可以自动化弹性伸缩,用户可以根据计算任务灵活的分 配最优数量的节点执行查询。同时PieCloudDB的多集群能力可轻松面对高并发场景,企业可以根据业务的并发需求动 态扩展 PieCloudDB 集群,满足业务应用的并发需求。 Openpie | PiecloudDB 基于eMPP0 码力 | 17 页 | 2.68 MB | 1 年前3
云原生虚拟数仓PieCloudDB Database产品白皮书据库的扩 容和升级时,由于传统数据仓库架构存储和计算的紧密耦合,往往需要企业花费巨大的运维和时间成本,且操作繁 琐。 木 桶 效 应 传统 MPP 数据仓库架构存在“木桶效应”,集群整体执行速度取决于最“短板的”节点的性能。因此,一个节点的 表现往往会 “拖垮”整个集群的性能,导致查询速度变慢。 随着时间的推移,业务的增长,企业往往需要在1-2年后 对集群增加计算节点,此时,无论新 2. 计算节点: 无状态节点(包括 Coordinator 和 Executer),主要负责接收用户请求和数据计算,支持 动态弹性伸缩,提供数据查询、执行计划、查询优化、数据加载、连接管理、并行计算以及资源隔离 等功能; 3. 存储节点: 存算分离架构,支持本地存储和云存储,推荐采用对象存储,提供数据压缩、数据加密、 采用高效并行的方式进行数据加载和处理,处理速度随节点增加而提升,支持流数据快速加载。 PieCloudDB 的 eMPP(弹性大规模并行计算)架构让数据计算可以自动化弹性伸缩,用户可以根据计算任务灵活的分 配最优数量的节点执行查询。同时PieCloudDB的多集群能力可轻松面对高并发场景,企业可以根据业务的并发需求动 态扩展 PieCloudDB 集群,满足业务应用的并发需求。 8 原生多租户支持 人性化的管控平台0 码力 | 17 页 | 2.02 MB | 1 年前3
云时代下多数据计算引擎的设计与实现大数据计算系 统云存储底座 @2024 OpenPie. All rights reserved. OpenPie Confidential 多计算引擎 内置计算引擎 Postgres执行器 全新的向量化执行引 擎 向量数据库 单机和分布式 Spark 客户依赖 跑批任务 机器学习 …… ... 按需增加 @2024 OpenPie. All rights reserved OpenPie Confidential Postgres 执行计算引擎 向量化执行引擎 FALLBACK 用(新引 擎功能暂不支持或者短期故障逃逸) 行处理,将来 HTAP 的 OLTP 用. @2024 OpenPie. All rights reserved. OpenPie Confidential 向量化 执行计算引擎 • SIMD深度优化 • 核心分析型计算算子完成0 码力 | 15 页 | 3.09 MB | 1 年前3
PieCloudDB Database V2.1 版本说明发布日期:2022 年 10 月 内 核 • 聚集下推功能得到增强:通过把聚集操作下推到连接操作之前去执行,极大的减 少连接操作需要处理的数据量,使得查询性能显著提升。 • 实现了 Block Skipping 的优化机制:数据库运行查询语句时,通过计算每个块 (block)中列聚集信息,在执行期间跳过非必要的数据块,减少数据读取量提高查询性 能。 • 极速 Analyze(Smart Analyze): 简墨(JANM)分布式处理增强:更高效的元数据采集和分发,提升用户查询响 应时间,降低系统负载 • 简墨(JANM)动态分配读取文件增强 dispatch 性能:此优化将动态的分配要 读取的文件给各个执行节点,降低查询的启动代价。 • 原生格式存储:在 HDFS/NAS 系统上支持原生存储格式。 • 对 Orca 的支持:PieCloudDB 支持查询优化器 Orca。Orca • 数据洞察优化: o SQL 结果页面 UI 更新,界面更加简洁优雅。优化超长结果显示,可支持选中结 果直接复制 o 支持执行请求时自由切入/切出页面,不影响用户进行其他操作 o 支持快捷键执行请求 o 支持 sql 文本查找/替换 • 数据导入优化: o 支持数据导入时自由切入/切出页面,无需用户在导入界面停留等待 o0 码力 | 3 页 | 257.15 KB | 1 年前3
云原生数据库 PieCloudDB : Unbreakable 安全特性剖析减少因为密钥泄露而造成的损失 • 多级密钥 • 密钥加密密钥 • 用户无感知 • 自动生成次级密钥 • 密钥自管理 • 分区加密 技术挑战(2) • 和数据库存储结合 • 不影响数据库内核(执行器,优化器) • 不修改/添加元数据表格式 • 业务拟合 • 不影响原有用户的查询\业务 • 不影响外围组件(ETL) PART 03 透明加密的实现 密钥管理 • 主密钥由用户提供 透明加密实现细节 • 模块化实现 • 优化器、执行器不感知 • 模块完美支持自研存储 • 可插拔加密算法库 • 支持不同硬件加密算法 • 支持国密算法 • 不影响用户业务 • 原有业务无需变化 • 不影响ETL数据导入导出 透明加密组件架构 用户查询 优化器 执行器 存储接口 数据 透明加密组件架构 用户请求 优化器 执行器 存储接口 透明加密组件 数据 函数接口 密钥管理0 码力 | 34 页 | 599.00 KB | 1 年前3
PieCloudDB Database V2.8 Release Note节省 CPU 和元数据大小。默认值为 32,与 INDEX_MAX_KEYS 相同。 3 l 外表 FDW 相关 n 新增 raw_fdw 外表接口,支持在协调节点和工作节点上执行,以原始字 节(bytea)读取文件。 n 为外表启用部分聚合能力,支持并行聚集下推。 n 新增 fdb_max_retry(替代原 MaxRetry 功能),默认值设置为 50。 插件生成审计日志。 l Kafka 接口 n 支持获取 Kafka FDW 统计数据。 n Kafka FDW 支持 JSON 格式。 l 执行计划信息 支持在 EXPLAIN ANALYZE VERBOSE 执行结果中显示调度相关状态信息。 4 l 用户定义函数 UDF n 新增 janm_page_size_read,用以获取 Page 大小。0 码力 | 4 页 | 144.49 KB | 1 年前3
云原生数据库PieCloudDB 性能优化之路• 扫描/连接优化阶段 • 主要处理扫描和连接操作 • 扫描/连接之外的优化阶段 • 主要处理除扫描和连接之外的其他操作,例如聚集、排序等 • 后处理阶段 • 主要把前面的处理结果转换成执行器期望的形式 • 简化表达式 • 简化连接树 • 把 IN,EXISTS 等类型的子查询转换为半连接 • 提升子查询 • 把外连接转换为内连接 • 把外连接转换为反连接 • 分发约束条件 • 式架构 • 引入了Motion的概念,使得数据可以在不同的工作节点之间移动 • 利用Motion产生分布式的查询计划 • 这些分布式的查询计划会被分为更小的单元,并被分发到不同的工作节点中并行执行 • 对于聚集操作,利用分布式的优势,在工作节点之间通过多阶段聚集来提升性能 # explain (costs off) select sum(b) from t group by a; QUERY PieCloudDB优化器针对云原生的特性,结合对象存储的设计,实现了更多高阶 的优化 • 聚集下推 • Block skipping • 预计算 • … • 通过把聚集操作下推到连接操作之前去执行,在有些情况下可以极大的减少连接 操作需要处理的数据量 # EXPLAIN (COSTS OFF) SELECT t1.a, avg(t2.c) FROM t1 JOIN t2 ON t1.b =0 码力 | 26 页 | 711.44 KB | 1 年前3
云原生虚拟数仓 PieCloudDB 的架构和关键模块实现全面的逻辑优化(谓词下推,子查询子链接提升,外连接消除) • 纯粹基于代价的物理优化 • 全面的数据分布特性描述,分布式代价估算,高效分布式表连接 • 多阶段的聚集 专门为复杂查询设计的优化器 分布式环境高效执行器 • 多阶段执行模型 • 流式数据重分布 @2022 OpenPie. All rights reserved. OpenPie Confidential select * from t1 left p_retailprice) FROM part p2 WHERE p2.p_brand = p1.p_brand) 如果在一个大数据量查询中sublink不能提升,外表每扫描一个元组,subquery都要被执行 一次,Query可能永远跑不出结果 @2022 OpenPie. All rights reserved. OpenPie Confidential CTE在SQL中的应用非常广泛(TPC-DS有48个query包含CTE)0 码力 | 43 页 | 1.14 MB | 1 年前3
共 15 条
- 1
- 2













