拥抱未来!数据库技术的最新发展与创新趋势 章颖强(江疑)阿里云数据库资深技术专家 章颖强,花名江疑。阿里云资深技术专家(P9),PolarDB事务引擎和新架构研发负责人。 浙江大学本科、研究生,十年以上的数据库研发经验,AliSQL的创始研发之一。 14-18年阿里双十一数据库内核负责人,主导集团数据库架构从MySQL演进到基于Paxos的X-DB架构。 目前负责阿里云主营战略产品PolarDB的内核研发和架构演进,并担任ICDE等数据库顶级国际会议的程序委员。同时多个技术架构突破在SIGMOD/VLDB /ASPLOS等顶会发表。 传统数据库架构和云的本质 云原生数据库的最新发展 新一代云原生数据库的趋势 传统IT架构下的传统数据库云架构下的传统数据库 VM VM Database Database VM Database CPU Memory Storage PhysicalMachinePhysicalMachine Database CPU Memory Storage CPU MemoryStorage CPU MemoryStorage VM VM VM Database CPU Storage MEM PhysicalMachine 多种资源规格耦合 弹性困难 PhysicalMachine VM VM VM Database Storage MEM CPU Cloudcomputingistheon-demandavailabilityofcomputersystemresources,especiallydatastorage(cloudstorage)andcomputingpower,withoutdirectactivemanagementbytheuser. Cloudcomputingreliesonsharingofresourcestoachievecoherenceandeconomiesofscale. Forsystembuilders,itisimperativetopurposelyoptimizesystemdesignandimplementationexplicitlyfortheunderlyingcloudinfrastructuretoachievethebestelasticity,cost,andefficiency.Thesepurpose-builtcloudsystemsarecalledcloud-nativesystems. Ref:https://en.wikipedia.org/wiki/Cloud_computing https://www.cs.purdue.edu/homes/csjgwang/cloudb/ On-demandstorage Fastscaleupforcomputenode Fastscaleoutforreadreplica Datamigrationhappenedwhenscalingup Database Database CPU Memory Storage CPUMemoryStorage Database CPU Memory Database CPU Memory Scaleupwithoutdatamigration SharedStorage 传统数据库架构和云的本质 云原生数据库的最新发展 新一代云原生数据库的趋势 云原生数据库架构——计算存储分离架构 AmazonAurora(2014) AlibabaPolarDB(2017) AzureHyperscale(2018) TencentCynosDB(2019) HuaweiTaurusDB(2020) Read-writenodeRead-onlynodes Database CPU Memory Database CPU Memory Database CPU Memory … SharedStorage 阿里云数据库的历史和发展 Gartner2022全球数据库魔力象限 17年国内首个云原生数据库 支持1写16读,最大100TB存储 软硬件一体化设计 高性能一致性协议 去IOE时代2009~2013 AliSQL时代2013~2017 PolarDB时代 2017~ PolarDB在云数据库中的位置 OS-bypassandzero-copy -byRDMA ParallelRaft PolarFS:AnUltra-lowLatencyandFailureResilientDistributedFileSystemforSharedStorageCloudDatabase(VLDB2018) Out-of-OrderAck/Commit/Apply FastCatchup PolarFS:AnUltra-lowLatencyandFailureResilientDistributedFileSystemforSharedStorageCloudDatabase(VLDB2018) Update RW RO Server Server Cache InnoDB B+Tree PhysicalReplication Data Redo BufferPool RedoApply RedoLog BufferPool Transaction InnoDB er/Optimizer/Excutor Pars TableStats Cache Query SPCache Cache ACL Cache B+Tree Transaction Parser/Optimizer/Excutor TableStats QueryCache SPCache ACLCache Binlog Query Binlog Query TableStatistics QueryCache SPCache ACLCache Query 3.ServerCache同步 8 8 11 21 lwmtrx_idshwm 2.事务MVCC隔离 6 5 4 3 1.B+树正确性 ScaleOut RWMEM STO RW RW 全局RO MEM STO RW MEM STO ScaleUp 库表级多写 支持不同库/表在不同RW节点并发写入 秒级横向扩展,极大提升整体的并发读写能力 多主互备,秒级切换,无需热备,成本降低一半 支持全局只读节点,高效执行汇聚库请求 •快速CPU弹降 •无感BufferPoolResize •高效的远程内存池支持 •基于热备技术秒级切换 •连接、事务跨机续传 •集群维度高性能全局一致性 •热资源池秒级横向弹性 本地ScaleUp跨机ScaleUp跨机ScaleOut 智能决策 HTAP-ROMPPCluster ScaleIn/Out Exe SQL Cache cmd SQL ExeCache cmd ··· data SQL ExeCache dispatcher data dispatcher dispatcher In/Out RW SQLParser/OptimizerRow-ExeColumn-Exe Row-indexColumn-index CXLmemclusterScale PolarProxy 更大数据量、更高性能 •大容量、更低成本的CXL内存可提供更多的数据缓存空间,进一步减少磁盘I/O •列存节点支持多机并行执行,共 享同一份数据,横向伸缩能力再度加强 HybridData SharedColumnIndexData TPCH-1TB单节点性能再提升10倍 多机执行性能实现近线性加速比 传统数据库架构和云的本质 云原生数据库的最新发展 新一代云原生数据库的趋势 static scaleelastic TheEndofSlowNetworks:It'sTimeforaRedesign,VLDB'16. AcceleratingRelationalDatabasesbyLeveragingRemoteMemoryandRDMA,SIGMOD'16 EfficientMemoryDisaggregationwithInfiniswap,NSDI'17 LegoOS:ADisseminated,DistributedOSforHardwareResourceDisaggregation,OSDI'18BestPaper UnderstandingtheEffectofDataCenterResourceDisaggregationonProductionDBMSs,VLDB'20 TableScanScheduler LoopJoin Scheduler Nested VectorizedExecutionEngine 分析节点 HashJoinScheduler Aggregation Scheduler GroupBy ExpressionFramework(SIMD) 分布式提交时间戳 分布式缓存一致性 分布式全局锁 行存索引BufferPool 行列索引同步 列存索引-IMCI 代理层 计算节点 RDMAnetwork 分布式共享内存 RDMAnetwork 分布式共享存储 PolarFS@PolarStore A ChunkServer b c a ChunkServer B c a ChunkServer b C ParallelRaft 主节点 SQL 事务 本地BP 主节点 SQL 事务 本地BP 主节点 SQL 事务 本地BP OtherOperator PolarProxy 基于高速RDMA的三层分离架构 PROXY 行级并发写入 RW RW RW RW ScaleOut PolarFusionServices Lockfusion TRXfusion Bufferfusion MEM PolarStore •支持多个master节点的行级并发写入,突破单点写入瓶颈 PolarFusion实现事务、锁、缓存信息全局协调 •利用全局事务ID和提交时间戳确定事务提交序和可见性 MEM •利用多级别不同粒度的全局锁实现高效的跨节点的并发控制 •通过Page锁实现跨节点缓存一致性 高度融合RDMA •实现高速的跨节点的信息协调 !"#$%&%D()*+,%&%- 2000 1500 1000 !"#$K& 通过扩展的AISQL和AI节点,PolarDB支持 500 0 ResNet-50BERTEfficientNet-B7GPT-2 模型部署 GPT-3 一个系统 PolarDB 一种语言 •大模型:阿里通义千问等大模型开箱即用 •MLOps:模型训练,模型推理,模型部署 等操作 AI•NL2SQL:自然语言驱动的数据查询 在线部署、离线推理 模型和数据的交互涉及多个 稳定、高效 模型 SQL •IDMapping:便捷的实体对齐 •AIGC:模型产生数据与数据库数据互操作 数据加工 系统,越来越复杂评估 在Polar4AI覆盖场景下,能够: 数据清洗、特征计算 模型模型选择、参数选择 训练 帮助用户节省50%以上的AI硬件成本,节约80%以上AI模型开发时间 Whatarewedoingwithourlives?nobodycaresaboutourconcurrencycontrolresearch. ——Pavlo,AndySIGMOD2017Keynote