上海品茶

您的当前位置:上海品茶 > 报告分类 > PDF报告下载

01OceanBase的OLAP能力提升实践--杨志丰.pdf

编号:122242 PDF 31页 2.65MB 下载积分:VIP专享
下载报告请您先登录!

01OceanBase的OLAP能力提升实践--杨志丰.pdf

1、OceanBase 的 OLAP 能力提升实践OceanBase 首席架构师杨志丰(竹翁)目录01/OceanBase简介02/SQL并行执行03/高级查询优化器04/行列混合存储引擎05/资源隔离06/快速导入OceanBase简介OceanBase发展历程产品立项产品立项第一个用户20102016核心账务核心交易支付金融核心业务多家金融客户多家金融客户互联网核心系统2017打破世界纪录打破世界纪录公有云服务TPC-C 6100万2019HTAP 引擎TPC-C 7.07亿2020V0.1 分布式,三副本高可用V1.0 分布式事务,多租户V3.0 HTAP混合负载 自主研发,完整知识产权、核

2、心能力100%掌控支付宝账务支付宝账务独立商业化独立商业化 企业级能力,多年支撑蚂蚁核心业务100%负载,数百家单位客户V2.0 高度兼容,高性能V4.0 单机分布式一体化开源开放TPC-H 30T 1526万2021规模化推广规模化推广公有云社区用户2022生态大拓展生态大拓展Oracle 兼容MySQL 兼容企业级 SQL 引擎SQL 优化SQL 执行存储过程可扩展的分布式架构分布式存储分布式事务分布式调度基于 Paxos 的容灾架构同城三机房两地三中心三地五中心OceanBase 产品功能特性 高性能:TPC-C 7.07亿tpmC 世界第一 高可用:RPO=0,RTO200台集群节点数

3、6PB单库存储容量3200亿行单表行数RPO=0,RTO 270s 一阶段分布式查询优化 自适应执行引擎 三阶段并行下压SQL并行执行自适应TP+AP混合负载的执行引擎SQL执行串行执行本地执行本地数据远程数据分布式执行并行执行并行查询本地并行分布式并行并行DML 多种执行模式 向量化执行 大规模并行处理并行执行调度DFO0DFO1DFO2R1R2HJPartition Wise JoinHJHJHJPartial Partition Wise JoinHash-Hash Distribution JoinBroadcast Distribution Join分布式连接算法EX(PKEY)R1

4、R2R1R2EX(HASH)EX(HASH)EX(Broadcast)R1R2CREATE TABLE R1(a int,b int,c int)PARTITION BY HASH(b)PARTITIONS 4;CREATE TABLE R2(a int,b int,c int)PARTITION BY HASH(b)PARTITIONS 4;R1.b=R2.bR1.b=R2.aR1.a=R2.aR1.a=R2.a丰富的分布式执行策略自适应执行create table R1(a int primary key,b int,c int)partition by hash(a)partitions

5、 4;select b,sum(c)from R1 group by group by b;=|ID|OPERATOR|NAME|EST.ROWS|COST|-|0|PX COORDINATOR|1|10|1|EXCHANGE OUT DISTR|:EX10001|1|10|2|HASH GROUP BY|1|9|3|EXCHANGE IN DISTR|1|9|4|EXCHANGE OUT DISTR(HASH)|:EX10000|1|8|5|HASH GROUP BY|1|8|6|PX PARTITION ITERATOR|1|7|7|TABLE SCAN|r1|1|7|=Group by/

6、Distinct下压 优化器总是下压 执行时基于实际数据特征决定是否跳过下压的算子高级查询优化器一阶段分布式查询优化两阶段变为一阶段 避免不优的计划 执行计划包含分区位置信息 秒级完成50表连接的优化并行下压下压场景例子v3.2v4.0Group by,无distinct去重的聚合函数select a,sum(d)from t group by a;支持支持Group By,有distinct去重的聚合函数select a,sum(distinct c),count(distinct d)from t group by a;不支持支持Rollupselect a,sum(d)from t gr

7、oup by a rollup(b);不支持支持Distinctselect distinct a from t;支持支持Window Functionselect a,b,sum(d)over(partition by c)from t;不支持支持create table R1(a int,b int,c int,d int,primary key(a,b)partition by hash(b)partitions 4;select sum(distinct c)from R1 where a=5;=|ID|OPERATOR|NAME|-|0|SCALAR GROUP BY|1|PX CO

8、ORDINATOR|2|EXCHANGE OUT DISTR|:EX10000|3|PX PARTITION ITERATOR|4|TABLE SCAN|r1|=|ID|OPERATOR|NAME|-|0|SCALAR GROUP BY|1|PX COORDINATOR|2|EXCHANGE OUT DISTR|:EX10001|3|MERGE GROUP BY|4|EXCHANGE IN DISTR|5|EXCHANGE OUT DISTR(HASH)|:EX10000|6|HASH GROUP BY|7|PX PARTITION ITERATOR|8|TABLE SCAN|r1|=行列混合

9、存储OceanBase存储引擎Multiple storage versionsDumpDump SSTableSSTableMemoryDiskIn-Memory HashIn-Memory B+-TreeMemTableMemTable (WOS)(WOS)Row-levelIn-MemoryRedo/MVCCSSTableSSTable (ROS)(ROS)Block CacheBlock CacheRow CacheRow CacheMutationLogsScanBig-QueryGetSmall-Query行列混合存储及编码压缩 编码 按列编码 提升数据相似度 规则发现 微块自主选

10、择 经验推导 解码 无需解压,直接查询 效果 存储空间是存储空间是MySQL/OracleMySQL/Oracle 1/31/3 查询缓存使用效率提升Microblock HeaderCol1 HeaderCol2 HeaderCol3 HeaderCol1Col1Col2Col2Col3Col3Row 1Row 2.Row nRow index查询过滤下压 充分利用编码优势加速查询 LSM-Tree难点 增量数据交叉 谓词算子下压 利用编码聚合信息快速过滤 按列过滤充分利用剪枝 向量化 按列批量解码 SIMD加速Minor SSTableMEMTableMajor SSTableencodi

11、ngmicroblockencodingmicroblockMicroblock HeaderCol1 HeaderCol2 HeaderCol3 HeaderCol1Col2Col3 Row 1Row 2.Row nRow indexAndcol2 3col3 1Result BitmapCol1 valueCol1 valueCol1 valueCol1 valueHTAP资源隔离多租户ZONE_1P3 P4P2 OBServer P1ZONE_2P3 P4P2 OBServer P1ZONE_3P3 P4P2 OBServer P1P1 OBServer RSP1 OBServer RS

12、OBServerRS P1OBProxyOBProxyOBProxyP1 P2Tenant_1P1 P2Tenant_1P1 P2 Tenant_1Tenant_SYSTenant_SYSTenant_SYSTenant_1Tenant_1Tenant_1Tenant_2Tenant_SYSTenant_2Tenant_2APP_1APP_2一个集群多个租户 多种租户类型并存 资源隔离与共享 大小租户独立扩缩容 统一运维管理解决业务痛点 适合微服务应用架构 适合多租户SaaS服务 适合集团化数据管理混合负载的资源隔离ZONE_1P5 P6P8 OBServer P7ZONE_2P5 P6P8

13、OBServer P7ZONE_3P1 P2P4 OBServerP1 P3P4 OBServerP3 P2 OBProxy交易类业务、实时报表业务WritesReads资源组1P5 P6P8 OBServer P7P1 P3 P2OBServer P4P5 P6P8 OBServer P7P1 P3 P2OBServer P4资源组3资源组3ZONE_4OBProxy决策分析类业务Weak Reads资源组2资源组1资源组2资源组1资源组2资源组1资源组2资源组1资源组2资源组1资源组2交易支付批作业 灵活的隔离机制 物理隔离 弱一致性读读写分离 多Zone读写分离 混合负载 基于cgrou

14、p的资源组 用户名匹配 SQL语句级匹配 大查询自动隔离 独立大查询队列快速导入旁路(direct path)导入MEMTSSTTablet导入数据SSTTabletlockedlockedOSS本地文件路由和控制节点数据节点数据节点数据节点备节点clogobloadertableAPIinsert into selectload data infile快速执行路径优化写入放大问题表锁阻塞写入备节点clog旁路导入性能5502459004000500060004xlarge(16c32G)12xlarge(48c96G)堆表 普

15、通插入堆表 旁路导入索引组织表 普通导入索引组织表 旁路导入小结:OceanBase的OLAP能力和特性基本能力 稳定可靠、高可扩展、高可用 并行执行引擎 高级查询优化器 低成本高性能行列混合存储 多租户与HTAP资源隔离OLAP功能特性 复杂查询(大量表JOIN、复杂子查询)分析函数(窗口函数、rollup)层次查询(connect by)表函数(from table)自定义管道函数(pipelined table)JSON、GIS类型 用户自定义函数UDF自定义聚集函数 异构数据库集成:dblink 导入:load data infile,obloader,快速导入 导出:select into outfile,obdumper 联邦查询:外表

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(01OceanBase的OLAP能力提升实践--杨志丰.pdf)为本站 (2200) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
会员购买
客服

专属顾问

商务合作

机构入驻、侵权投诉、商务合作

服务号

三个皮匠报告官方公众号

回到顶部