当前位置: 首页 > news >正文

从单体架构到 LTAP:数据库存储革新,实现无限存储与实时数据分析

从单体架构到 LTAP:数据库存储层革新,实现无限存储与实时数据分析

几乎所有传统数据库都将预写日志(WAL)和数据文件存于同一台机器的磁盘上,这正是数据丢失风险、昂贵的读副本和高可用克隆,以及分析查询拖累事务处理的根本原因。Lakebase 通过将日志和数据文件外部化为独立的云服务(SafeKeeper 和 PageServer),使 Postgres 计算无状态,实现了无限存储、弹性计算、持久写入、更简单的高可用性和即时分支,且不会显著增加延迟。LTAP 更进一步,以开放的列式格式存储运营数据,Postgres 和湖仓(Lakehouse)引擎均可读取,从而使分析能够基于事务刚刚写入的新鲜数据运行,无需变更数据捕获(CDC)管道、无需第二份副本,也不会降低事务工作负载的速度。与试图在一个引擎中统一两种工作负载的混合事务分析处理(HTAP)不同,LTAP 在存储层实现统一,并为每个任务保留最适合的引擎。

16 年前的抉择

16 年前,作者在加州大学伯克利分校攻读博士学位时,导师建议其专注于分析领域,称联机事务处理(OLTP)数据库已是解决的问题。作者听从建议,参与了后来成为 Apache Spark 的研究项目,之后创立了 Databricks。在构建 Databricks 过程中,作者发现 OLTP 数据库远非已解决问题,由此催生了 Lakebase。

单体数据库架构的痛点

当今世界上运行的绝大多数数据库都是单体架构,包括 MySQL、Postgres 和经典的 Oracle。以 Postgres 为例,磁盘上最重要的是预写日志(WAL)和数据文件。提交事务时,数据库先将更改描述追加到 WAL 中,日志条目持久写入后事务视为提交,之后异步更新数据文件。WAL 让写入更快且安全,数据文件让读取更快。但单体架构带来诸多挑战,如配置错误和节点故障导致的数据丢失、扩展读取和高可用性需要物理克隆、分析与事务性流量相互竞争等,这些问题都源于 WAL 和数据文件存储在同一台机器内。

Lakebase 架构的优势

如果重新设计 OLTP 数据库,可从现代云的组件入手。Neon 团队奠定了 Lakebase 的基础,核心思路是让 Postgres 计算实例无状态,通过将 WAL 和数据文件外部化为独立服务实现。WAL 转变为 SafeKeeper,通过基于 Paxos 的网络复制保证提交事务的持久性,不会增加写入延迟,且 SafeKeeper 和 PageServer 的组合可实现 5 倍更高的写入吞吐量和 2 倍更低的读取延迟。数据文件转变为 PageServer,可视为底层对象存储的写通缓存,通过多层缓存隔离和最小化读取延迟,能获得解耦的、几乎无限的存储优势。Lakebase 架构还带来仍然是 Postgres、无限存储、无服务器弹性计算、持久写入和零数据丢失、更简单的高可用性、即时分支克隆和恢复等优势。

LTAP:事务和分析共享一份数据

LTAP 解决了数据两份副本的问题,关键思想是在存储层统一事务和分析两个世界。PageServer 将 Postgres 数据从行格式转换为 Parquet 的列式布局,保留 Postgres 语义,包括类型系统和多版本控制。列式数据压缩效果好,可减少网络数据传输量和存储成本。分析查询时,先向 Postgres 请求当前的日志序列号(LSN),从对象存储读取绝大多数数据,从 PageServer 获取未具体化的最新更改并合并,可获得一致、完全最新的数据读取,且不影响 Postgres 的事务性工作负载。对于非常小的表,不转换为列式格式。LTAP 无需选择表,自动处理所有表,避免了 CDC 或“镜像”的问题。与 HTAP 相比,LTAP 在存储层实现统一,避免了 HTAP 功能集不完整、缺乏生态系统、缺乏性能隔离等问题。

结语

去年提出 Lakebase 架构时,就知道它将实现多种优势。LTAP 想法后来产生,解决了基于最新事务数据进行分析的问题。未来几个月解决 LTAP 小问题并推出该功能后,Lakebase 表将以高性能用于分析,该架构还有很多优化机会,值得期待。

http://www.gsyq.cn/news/1635925.html

相关文章:

  • 三步极速上手:E-Hentai漫画批量下载高效解决方案
  • 嵌入式应用开发笔记之web端设备控制台
  • RAG沉寂了吗?一场被误读的退场与一场正在发生的进化
  • 每天10分钟学会OceanBase系列(Day 9):SQL性能诊断,看懂执行计划不再难
  • 汽车功能安全的“独立性“要求:为什么两个系统“都好“不等于“一起好“
  • 机器学习系列:高斯混合模型(1)
  • 怎么自动下载多个文件?
  • AI模型中规划与执行分离:开启智能应用新范式
  • 爱丽丝的发丝──《爱丽丝惊魂记:疯狂再临》制作点滴
  • 5分钟永久解锁Office:零风险激活Microsoft 365的终极指南
  • H5支付实战:后端生成表单与支付宝客户端唤起的无缝衔接
  • ax-M3 开源实测:部署、推理与基准测试全记录
  • 速掌柜ERP-TemuTikTok Shop专精跨境ERP
  • 【关注可白嫖源码】--课程设计+毕业设计+django大学生健康信息可视化管理系统[编号:project35522](案例分析)
  • Video2X 6.0.0 终极指南:如何免费让模糊视频秒变4K高清
  • 复变函数:拉普拉斯逆变换、常见性质、解微分方程的一般通法
  • windows网络适配器驱动开发-泛型分段卸载(上)
  • windows网络适配器驱动开发-泛型分段卸载(下)
  • 三步搞定E-Hentai漫画收藏:免费批量下载终极指南
  • postgresql
  • 如何快速掌握RenameIt:Sketch设计师必备的批量重命名终极指南
  • 终极AMD Ryzen调试工具SMUDebugTool:5步成为硬件掌控大师
  • 机器学习与模式识别 第八章 MAP与偏方差 考点压缩
  • Hetzner创建云服务器SSH Keys配置介绍(公钥、私钥、密钥配置、SSH配置)
  • ICM-42605与STM32F437ZG在运动追踪中的硬件与算法实现
  • 嵌入式精确计时系统:CS2200-CP与PIC18F2455的硬件设计与优化
  • TVA在具身智能商业化部署中的技术突破(13)
  • 从CVE-2020-27986看SonarQube安全加固:构建纵深防御的代码审计平台
  • 好用的区域教育一体化管理平台源头厂家
  • git的基本了解