POLARDB IMCI 白皮书 云原生HTAP 数据库系统 一 与其他的商业数据库在HTAP的异同点(译)...

article/2025/9/25 1:50:43

9fcd429421c3876358336818c363c207.png

开头还是介绍一下群,如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,在新加的朋友会分到2群(共880人左右 1 + 2 + 3)新人会进入3群

摘要

在当前的数据库环境中,需要高可用性、资源弹性和成本效益,云原生数据库已成为云上关键应用程序的大多数选择的数据库产品。同时,由于数据与分析之间的连接不断增加,用户更喜欢使用单个数据库高效地处理OLTP和OLAP工作负载,这增强了数据及时性并降低了数据同步和整体业务成本的复杂性。在本文中,我们总结了基于我们的经验和客户反馈的云原生HTAP数据库的五个关键设计目标,即透明度、竞争性的OLAP性能、对OLTP工作负载的最小干扰、高数据鲜度和出色的资源弹性。为了实现这些目标,我们提出了一种解决方案:PolarDB-IMCI,这是一种在阿里云上设计和部署的云原生HTAP数据库系统。我们的评估结果表明,PolarDB-IMCI能够有效地处理HTAP实验和生产工作负载;值得注意的是,它在TPC-H(100GB)上的分析查询速度提高了多达149倍。PolarDB-IMCI在OLTP工作负载上引入了低可见度延迟和较小的性能干扰(<5%),并且通过几十秒的扩展来实现资源弹性。

最近几年,云原生数据库在数据库行业成为了不可避免的趋势[8,20,25,52]。不同于本地数据库,云原生数据库将其架构分解成两层:计算层和存储层,允许资源独立扩展。配备磁盘的节点(在存储层)构成了一个共享存储池,作为计算层节点的统一数据接口。这种分解架构使数据库系统能够为客户提供极端的弹性、灵活的按需计费模型和低操作成本。因此,云原生数据库市场迅速蓬勃发展[36]。

同时,我们也注意到经典 OLTP 和 OLAP 数据库之间的界限开始模糊:在商业智能、社交媒体、欺诈检测和营销等领域,数据库需要提供足够的支持,既支持事务处理,也能支持分析处理。为了提供这样的功能,传统的解决方案通常将数据和应用逻辑部署到两个数据库中,一个专门用于 OLTP,另一个专门用于 OLAP (例如,MySQL  用于 OLTP,ClickHouse 用于 OLAP),并依赖数据同步技术(例如,抽取-转化-加载 (ETL) 工作流程) 来确保它们之间的一致性,如图1所示。根据我们的数据,近30%的 PolarDB(一个 OLTP 数据库) 的客户需要将数据同步到独立的数据仓库系统中进行数据分析。

这种解决方案是昂贵的,因为它会对 OLTP 性能产生负面影响,并引入耗时的数据同步过程,进而导致 TP/AP 数据库中维护的数据之间出现延迟甚至不一致。在实践中,这些问题导致了次优的用户体验和大量的用户咨询。为了解决这些问题,需要设计一种云原生混合事务分析处理(HTAP) 数据库。在本文中,我们介绍了阿里云部署的云原生 HTAP 数据库 PolarDB-IMCI。我们总结了 PolarDB-IMCI 的关键设计目标,这些目标也适用于一般的云原生 HTAP 数据库设计:

• G#1: 透明查询执行。为了在单个数据库中服务于混合负载,数据库用户无需知道他们的查询在哪个层或节点上执行。一个云原生 HTAP 数据库应该为用户提供统一的 SQL 接口,并自动分发和优化查询,透明地跨计算和存储层分布。

• G#2: 一致性和并发控制。云原生 HTAP 数据库必须保证事务一致性,并为 OLTP 和 OLAP 工作负载提供高效的并发控制。它应该支持多种隔离级别,并为分析查询提供强一致性,同时保持 OLTP 操作的高事务吞吐量。

• G#3: 弹性扩展。为了提供灵活性和成本效益,云原生 HTAP 数据库应该能够根据工作负载需求动态扩展其计算和存储资源。它应该允许用户轻松地扩展或缩小资源,而不会影响服务。

• G#4: 高可用性和灾备恢复。云原生 HTAP 数据库必须在各种故障情况下保证高可用性和灾备恢复,包括节点故障、网络中断和自然灾害。它应该提供自动切换和恢复机制,并允许用户将数据库部署在多个地区进行数据冗余。

• G#5: 管理和运维简便。云原生 HTAP 数据库应提供简单直观的管理界面,并从用户方面尽量减少维护工作。它应该自动化例行管理任务,如备份、恢复和软件升级,并提供全面的监控和警报功能,以确保系统的健康和性能。

e487a4ff7d02cd095dffe77ecf76b5e5.png

PolarDB-IMCI满足所有期望的目标(即G#1-5),采用以下创新。首先,为了满足G#1和G#2,我们实现了内存列索引(IMCI作为补充存储。PolarDB-IMCI吸收了OLAP社区的各种先进优化,并推导出一个新的SQL引擎来匹配列的执行模式。此外,PolarDB-IMCI提出了一种新的查询路由机制,可以透明地分发查询。

其次,为了满足G#3,PolarDB-IMCI将列索引放置在独立的只读(RO)节点上,具有共享存储架构,以在OLTP和OLAP请求之间提供有效的资源隔离。通过重用REDO日志(即行存储的差分日志记录)将更新传播到RO节点,而不是运输其他逻辑日志(即MySQL Binlogs)。

第三,为了满足G#4,我们使用日志前提交集装箱(CALS)和2阶段无冲突日志重演(2P-COFFER,§5.2)增强了我们的更新传播框架。CALS在提交之前运输事务日志。2P-COFFER有效地解析和应用REDO日志到RO节点。此外,我们将列索引实现为追加式存储:记录按照插入顺序而不是主键顺序组织。因此,对列索引的更新是在原地和快速执行的。

最后,为了满足G#5,列索引的检查点机制无缝地构建在PolarDB的原始存储引擎中。因此,快速拉起RO节点使用共享存储上的检查点可以实现快速的扩展能力。

2 背景和相关工作

2.1 混合事务/分析处理长达几十年的时间里,OLTP 和 OLAP 数据库分别专为它们的工作负载设计。例如,OLTP 引擎(例如 MySQL)偏好基于行的数据格式、逐行操作符,以支持数据修改和随机查询。相反,OLAP 引擎(例如 ClickHouse)使用基于列的数据格式、批量操作符和延迟化策略,以支持扫描密集的分析查询。因此,现代数据库管理员常常需要部署 OLTP 和 OLAP 数据库,并在两种数据库之间进行数据传输。HTAP 数据库的出现消除了维护多个数据库的负担,并简化了数据传输。我们将现有的 HTAP 解决方案分为两类(即单实例和多实例),并分别讨论每个类别。单实例的 HTAP。SAP HANA [47] 通过引入三层合并树来支持混合工作负载,这是一个分层的内存存储,支持行和列格式。Oracle Dual  允许将关系表构建为内存列单元(IMCU),以提供快速的列扫描。IMCU 的新更新由元数据临时记录,当累积了更多的更新时,IMCU 可以从内存缓冲区中重新填充。与 Oracle Dual 不同,SQL Server CSI  支持列存储和列存储索引(CSI),并定期将新的更新合并到 CSI 中,从而消除了重建的需要。PolarDB-IMCI 遵循类似的原则,但通过解决后面章节详细介绍的一些关键挑战,将此设计引领到云本地架构中。多实例的 HTAP。另一种 HTAP 数据库利用复制技术维护多个实例。因此,事务和分析查询可以路由到不同的实例,以实现高效的性能隔离。此外,每个实例都可以根据工作负载来定制其架构。SAP HANA 的较近作品提出异步表复制(ATR),用于主要实例和副本之间的数据同步。复制日志异步地提供给副本,以会话粒度并行回放。与 ATR 不同,Google F1 Lightning[54] 使用 Change Data Capture(CDC),一种更松散的机制,通过 BigTable 调换数据。TiDB 使用 Raft 连接行存储引擎(TiKV)和列式引擎(TiFlash)。TiFlash 表现为Raft 学习器,异步地从领导者接收日志,并不参与领导人选举。IBM DB2 Analytics Accelerator(IDAA) 通过集成同步来维护基于行的表数据副本,以支持增量更新。Oracle Dual 的新版本[43] 支持将只读工作负载卸载到同构实例(备用),并通过 REDO 日志同步数据。ByteHTAP 使用分离存储,通过 Binlog 同步异构引擎(ByteNDB 用于 OLTP 和 Apache Flink[18] 用于 OLAP)。Wildfire [2] 是一个兼容 Spark 的数据库,也利用分离存储进行数据同步。与这些工作不同,PolarDB-IMCI直接重用 REDO 日志进行异构数据复制。据我们所知,PolarDBIMCI 是第一个使用物理日志有效地同步异构存储的工业数据库。

2.2 云本地数据库云原生数据库的关键技术是将计算和存储解耦。一个典型的云原生数据库经常在其存储引擎下采用云存储,利用另一层虚拟化提供弹性存储服务。云原生架构使客户获得高弹性资源和按需计费模式的好处,也减少了服务提供商的维护和开发成本。云原生的 OLTP/OLAP。Aurora  是一种云原生 OLTP数据库,部署在定制的云存储层上。Taurus  使用基于分离的持久化机制的不对称复制,数据库日志和页面分别被复制。除了 OLTP 系统,OLAP 数据库的存储分离也受益。一些传统的数据仓库系统适应了云计算环境 (例如 Vertica 、Eon ),还有一些 OLAP 数据库是专为云环境本地开发的(例如 Snowflake 、Redshift 、AnalyticDB )。云本地 HTAP。SingleStore 是第一个走向云本地 HTAP数据库的产品。它将计算和存储解耦,并支持在计算节点的本地磁盘上提交事务,并将数据异步推送到其 blob 存储器。与 SingleStore 不同,PolarDB-IMCI 将所有持久化数据卸载到共享存储层中,因此,计算节点的所有状态都可以直接从共享存储中重建,有利于恢复和弹性。

ff4691e602c31bbb6044ab94730bfe14.png


http://chatgpt.dhexx.cn/article/20dHPg1N.shtml

相关文章

TiDB HTAP

TiDB 数据库 HTAP 概述 HTAP技术 OLAP和OLTP带来了多副本的问题。 HTAP的要求 HTAP的架构 异步复制&#xff0c;不参与投票。 HTAP的特性 行列混合 列存支持基于主键的实时更新TiFlash作为列存副本OLTP和OLAP业务隔离 智能选择&#xff08;CBO自动或者人工选择&#xff09;…

如何给一个 HTAP 数据库做基准测试?StoneDB学术分享会第4期

在最新一届国际数据库顶级会议 ACM SIGMOD 2022 上&#xff0c;来自清华大学的李国良和张超两位老师发表了一篇论文&#xff1a;《HTAP Database: What is New and What is Next》,并做了 《HTAP Database&#xff1a;A Tutorial 的专项报告。这几期学术分享会的文章&#xff0…

​网易游戏实时 HTAP 计费风控平台建设

本文整理自网易互娱资深工程师, Flink Contributor, CDC Contributor 林佳&#xff0c;在 FFA 实时风控专场的分享。本篇内容主要分为五个部分&#xff1a; 实时风控业务会话会话关联的 Flink 实现HTAP 风控平台建设提升风控结果数据能效发展历程与展望未来 众所周知&#xff…

黄东旭:开发者的“技术无感化”时代,从 Serverless HTAP 数据库开始 | PingCAP DevCon 2022

12 月 1 日&#xff0c;以"去发现&#xff0c;去挑战"为主题的 PingCAP DevCon 2022 主论坛在线上成功举办&#xff0c;为数万观众带来一场技术盛宴。PingCAP 联合创始人兼 CTO 黄东旭&#xff0c;在大会上分享了“The Future of Database”的主题演讲&#xff0c;分…

快速上手TiDB,体验全新的一栈式实时HTAP数据库

&#x1f4e2;&#x1f4e2;&#x1f4e2;&#x1f4e3;&#x1f4e3;&#x1f4e3; 哈喽&#xff01;大家好&#xff0c;我是【IT邦德】&#xff0c;江湖人称jeames007&#xff0c;10年DBA工作经验 一位上进心十足的【大数据领域博主】&#xff01;&#x1f61c;&#x1f61c;…

CNCC技术论坛|分布式数据库HTAP的探索与实践

本文转载自微信公众号“中国计算机学会” 编者按 12月8-10日&#xff0c;中国计算机协会即将全线上举办CNCC2022&#xff0c;大会覆盖118个计算行业、人工智能、云计算、教育、安全等30个热门专业领域的技术论坛&#xff0c;700余位专家将着力探讨计算技术与未来宏观发展趋势&a…

TiDB:基于 Raft 的 HTAP 数据库

目录 1. 简介 2. 基于 Raft 的 HTAP 3. TiDB 架构 4. Multi-Raft 存储 5. HTAP 引擎 6. 实验 7. 相关工作 8. 结论 摘要 混合事务和分析处理&#xff08;HTAP&#xff09;数据库处理事务查询和分析查询时需要隔离&#xff0c;以消除它们之间的干扰。要实现这一点&…

云原生 HTAP -- Cloud-Native Transactions and Analytics in SingleStore

文章目录 背景1 存算分离2. 统一的表存储 &#xff08;行列混存&#xff09;2.1 二级索引2.2 行锁 3. 自适应查询引擎3.1 Segment skipping 实现3.2 Filtering 选择 4 性能总结 背景 上篇看了 PolarDB-IMCI 在HTAP的实践&#xff0c;其中提到了其也有借鉴 SingleStore 的实现思…

真正的 HTAP 对用户和开发者意味着什么?

作者 | 杨传辉 OceanBase 关于作者&#xff1a; 杨传辉&#xff0c;OceanBase CTO。2010年作为创始成员之一加入 OceanBase 团队&#xff0c;主导了 OceanBase 历次架构设计和技术研发&#xff0c;从无到有实现 OceanBase 在蚂蚁集团全面落地。同时&#xff0c;他也主导了两次…

HTAP系统架构实践总结

商业上的驱动力 当前市场上对于数据的处理方式越加的注重多种类型的负载混合进行&#xff0c;即对于用户或者业务端来说&#xff0c;有一个统一的处理逻辑或者架构。如对于广告计算&#xff0c;用户画像&#xff0c;分控&#xff0c;物流&#xff0c;地理信息等商业场景下&…

HTAP 应该是一种需求而不是一款产品

HTAP&#xff08;Hybrid Transaction and Analytical Process&#xff0c;混合事务和分析处理&#xff09;自2014年明确提出以后成为了很多数据库厂商努力的方向。其实HATP并不新鲜&#xff0c;早年RDB刚兴起时本来就是用一个数据库同时做事务和分析&#xff0c;但随着数据规模…

TiDB数据库HTAP概述

目录 HTAP MPP架构 TiDB的工作负载场景与流式计算场景 例题 HTAP HTAP 同时支持OLTP&#xff08;在线事务性&#xff09;OLAP&#xff08;在线分析性&#xff09; OLTP&#xff1a;行存 如手机支付 OLAP&#xff1a;列存 如报表&#xff0c;分析传统的OLTP和OLAP解决方…

云原生 HTAP -- PolarDB-IMCI:A Cloud-Native HATP Database

文章目录 0 背景1 IMCI 架构 及 相关组件实现1.1 架构演进的背景1.2 基本架构1.2 基本使用1.4 列索引存储 设计1.5 RW-RO 的数据同步实现1.5.1 CALS1.5.2 2P-COFFER 1.6 计算引擎实现1.7 性能 2 总结 近期除了本职工作之外想要再跟进一下业界在讨论 以及 可落地的方向&#xff…

浅谈“HTAP”

文章转载自&#xff1a; 浅谈“HTAP”&#xff0c;仅用于学习&#xff0c;如有侵权&#xff0c;请联系删除。 HTAP是近些年来比较火的一个概念&#xff0c;下面就聊聊其前世今生及技术特点。 1. 数据应用类别 根据数据的使用特征&#xff0c;可简单做如下划分。在选择技术平台…

HTAP应该是一种需求 而不是一种产品

作者&#xff1a;石臻臻, CSDN博客之星Top5、Kafka Contributor 、nacos Contributor、华为云 MVP ,腾讯云TVP, 滴滴Kafka技术专家 、 LogiKM PMC(改名KnowStreaming)。 LogiKM(改名KnowStreaming) 是滴滴开源的Kafka运维管控平台, 有兴趣一起参与参与开发的同学,但是怕自己能力…

009、体系架构之HTAP

HTAP HTAP技术传统的HTAP解决方案HATP的要求TiDB的HTAP架构TiDB的HTAP特性使用场景 MPP HTAP技术 传统的HTAP解决方案 HATP的要求 可扩展性 分布式事务分布式存储 同时支持OLTP与OLAP 同时支持行存和列存OLTP与OLAP业务隔离 实时性 行存与列存数据实时同步 TiDB的HTAP架构 …

什么是HTAP 阿里云上实现

讲师介绍 梁成辉&#xff08;城璧&#xff09;&#xff0c;阿里数据库事业部技术专家&#xff0c;阿里分布式数据层中间件TDDL、云产品分布式关系型数据库服务DRDS技术负责人。曾多次担任数据层稳定性负责人并保障双十一TDDL & DRDS的稳定性&#xff0c;目前主要聚焦在DRD…

浅谈 HTAP 混合技术和金融业应用场景

近年来&#xff0c;随着大数据应用场景的快速普及与多样化发展&#xff0c;传统的数据处理方案已愈发难以满足海量数据实时分析的数据处理需求。针对上述挑战&#xff0c;混合事务/分析处理&#xff08;Hybrid Transaction and Analytical Process&#xff0c;HTAP&#xff09;…

聊聊 HTAP 的前世今生

随着现代社会大型实时分析应用的逐渐流行&#xff0c;关系型数据库已经难以处理高并发的事务请求。商业层面上&#xff0c;当全球进入数字化时代&#xff0c;数字化技术渗透到各行各业&#xff0c;同时产生了海量数据&#xff0c;数据的存储和应用是企业决策的重要依据之一&…

深入浅出理解什么是HTAP

关于HTAP HTAP(Hybrid Transactional/Analytical Processing)混合事务 / 分析处理。这里的HTAP就是常见的比较经典的OLAP和OLTP的处理场景的结合体。即可解决OLTP在线事务处理场景,还可以解决OLAP在线分析场景。Gartner也认为HTAP数据库将成为数据库领域的一个重要的发展趋…