Lakebase Postgres 成本优化走向实操,但节省效果取决于配置
Databricks 于 9 月 30 日发布了 Lakebase Postgres 成本优化指南,将一项架构承诺转化为一系列可衡量的配置决策。该指南称,当超过 10% 的源数据行发生变化时,Snapshot 同步模式的效率最高可提升 10 倍。这一说法揭示了核心矛盾:Lakebase 可以减少闲置计算资源和重复存储,但团队必须围绕自身真实工作负载进行配置。
新的成本优化指南聚焦五个杠杆:数据范围、同步模式、计算规格、恢复历史和账单可见性。它还揭示了一些可能悄然削弱节省效果的默认设置与约束。
这之所以重要,是因为 Databricks 正将 Lakebase 定位为不止于另一项托管 Postgres 服务。它的主要竞争对象是固定容量数据库模式,在这种模式下,计算资源、存储、副本和开发环境通常一并长期预配。Lakebase 将这些资源拆分开来,但这种拆分也带来了客户必须妥善管理的选择。
因此,结论并非“无服务器数据库总是更便宜”这样简单。更有价值的主张是:数据库支出应随活跃数据、实际流量和明确的恢复要求而变化。能否实现这一点,取决于每个应用背后的具体设置。
Databricks 将 Lakebase 成本优化转化为运营模型
新指南将 Lakebase 的成本效率从产品宣称转变为一套工作负载管理方法。
Databricks 将 Lakebase 描述为一项计算资源和存储资源可独立管理的全托管 Postgres 数据库。计算资源可在需求上升时扩展、在低负载期间缩减,并在符合条件的工作负载处于非活跃状态时暂停。
这一模式不同于按预期峰值进行规格配置的传统部署。即使流量下降,固定实例仍会按其预配容量持续计费。它还迫使运营人员在获得足够的生产环境证据之前就估计未来负载。
Lakebase 则要求团队设定允许的计算资源范围,数据库随后在这些边界内进行调整。Databricks 表示,管理员可以限制上限,为财务和工程团队设定自动扩展的边界。
暂停功能最清楚地体现了按使用量计费的经济模式。启用 scale to zero 后,符合条件的计算资源会在达到非活跃超时时间后停止。Databricks 称,后续请求可在数百毫秒内将其恢复。
这一延迟很小,但并非无关紧要。开发环境通常可以容忍一次恢复过程。对尾延迟目标严格的交互式生产服务,则可能需要持续可用的容量。
因此,Databricks 将 scale to zero 定位为尤其适合开发、测试、非生产变体以及没有极端延迟要求的应用。这种表述比将暂停功能包装成通用生产环境设置更具可信度。
该架构还改变了分支对存储的使用方式。数据库分支起初是其父分支的逻辑子级,而不是完整的物理副本。随着分支逐渐产生差异,它仅存储变更,从而降低测试和实验的初始存储负担。
当开发者或 AI 智能体创建大量短生命周期环境时,这一点尤为重要。传统克隆可能会成倍增加存储和运维工作。写时复制分支仅记录与共享数据之间的差异,因此可减少这种重复。
读取副本也遵循类似模式。Lakebase 副本使用独立计算资源,同时读取同一底层存储层。因此,增加读取能力并不需要额外创建一份完整存储副本。
高可用性同样共享现有存储基础。冗余计算资源仍会产生费用,但该架构避免了仅为让每个计算端点拥有各自持久状态而复制整个数据库。
这些节省源于资源分离,而非自动折扣。每个计算端点在活跃时仍会消耗容量。每一份保留的变更仍会占用存储。每条同步管道都会增加一项计量。
这一区别才是该指南真正的新意。Databricks 正在为此前推出的架构向客户提供一套运营模型。推荐流程从识别哪些数据和服务真正处于活跃状态开始。
最大的节省始于减少数据搬运
Lakebase 成本优化首先依赖于限制运营副本规模,而不是在大型数据库到位后再进行调优。
Lakebase Synced Tables 将受治理的数据从 Unity Catalog 移入 Postgres,以供应用低延迟访问。这种模式属于反向 ETL,即将处理后的分析数据回传至为应用提供服务的运营系统。
Databricks 指出了一种常见错误:当应用仅查询一小部分近期数据时,却复制整张大型 Delta 表。这样的选择会增加存储、扩大同步工作量,并可能损害性能。
该公司建议通过物化视图定义应用的工作数据子集。物化视图会存储查询结果以供重复使用。它可以提供滚动时间窗口,同时将完整历史数据集保留在 Delta 中。
Databricks 以滚动 60 天视图为例。应用在 Lakebase 中获取活跃记录,而较早的记录仍保留在 lakehouse 中。随着记录因超出时间窗口而老化,删除操作可以同步传播。
这不只是存储优化。更小的同步数据集还能减少管道需要检查或移动的数据量,并缩小计算资源需要缓存的高频访问工作集。
同步表文档介绍了三种具有不同成本和新鲜度特征的模式。
Snapshot 模式会在每次刷新时以完整副本替换目标数据。Databricks 建议在每个周期内超过 10% 的源数据行发生变化时使用该模式。该公司表示,在这种情况下,Snapshot 的效率可能比应用大量增量变更高 10 倍。
Triggered 模式会按需或根据计划处理增量变更。它适用于以已知节奏变化的数据源,以及可接受有限延迟的应用。
Continuous 模式会保持管道持续运行,以处理秒级更新。它提供最低延迟,但 Databricks 将其称为成本最高的选项,因为其计算资源始终处于活跃状态。
这一层级挑战了常见的设计直觉。团队往往会在确认用户或下游系统是否需要如此高的新鲜度之前,就选择可用的最新模式。
客户支持仪表盘可能可以接受源表发生变化后再更新。为当前风险评分提供服务的欺诈系统,则可能需要低得多的延迟。将两类工作负载都设为 continuous,会在前一种场景中浪费资源。
Triggered 同步提供了中间路径。Databricks 表示,表更新触发器可仅在源数据变化时启动工作,在无需维持始终运行的管道的前提下,接近 continuous 的新鲜度。
该公司警告不要在触发运行之间留下过长间隔。大量积压可能使下一次同步更慢、成本更高。避免持续运行,并不意味着不再需要合理的处理节奏。
团队还可以将兼容的表归入同一同步管道。这种装箱方法可让多张表共享管道计算资源,而不必为每张表单独运行一个进程。
对于 continuous 管道而言,这一优势最明显,因为其计算资源持续活跃。将表分组可以减少重复开销,但团队仍需考虑共享调度和故障边界是否适合其应用。
更广泛的原则很直接:数据新鲜度是一项服务等级决策,而不是衡量质量的默认标准。每一项降低延迟的要求,都应与用户操作、风险阈值或业务需求相关联。
这一决策也会对那些将应用和分析职责分离的团队形成压力。应用开发者可能要求即时更新,而数据团队承担管道账单。Lakebase 让这种权衡更加可见,但组织仍需要一项共同政策。
一次务实的审查应提出三个问题。应用实际读取哪些数据行?每项变更必须多快显现?多个数据集能否共享同一更新流程?
这些问题对最终账单的影响,大于数据库标签本身。无服务器架构无法抵消这样一种运营副本:它包含多年未使用的历史数据,或持续传输无人需要立即获取的变更。
工作集比数据库总规模更重要
计算资源规格应基于高频访问数据、并发性和延迟,而非数据库完整的存储占用。
Databricks 表示,新建 Lakebase 项目包含一个生产分支和一个主要的读写计算端点。默认计算范围为 8 至 16 个容量单位,并设置为 24 小时无活动后暂停。
这些默认值只是起点,并非经过验证的生产规格。如果内部小型应用的团队从未重新评估这些设置,就可能为不必要的容量付费。
该指南建议在预配项目时设置合适的范围。对于自动化环境而言,这一点很重要,因为每个分支或项目都应以经过审慎设置的限制开始。
最重要的规格输入是工作集,即被频繁访问、因此能从缓存中受益的数据和索引。它并不是数据库完整的磁盘存储大小。
Databricks 以一个总规模为 2,500 GB、热工作集为 20 GB 的数据库说明二者差异。该应用不需要为整个数据库配备足够的内存,而是需要容纳活跃的 20 GB 数据,并预留运维余量。
该公司称,Lakebase 最多可将计算内存的 75% 用于缓存。当热工作集能够容纳其中时,大多数读取操作都可留在内存中完成。
如果无法容纳,Postgres 就必须从存储中检索缺失页面。这些缓存未命中会提高延迟,并使响应时间更难预测。
这构成了 Lakebase Postgres 成本优化背后的核心机制。最便宜的计算设置不一定是最小的设置,而是既能容纳工作集、又满足工作负载要求的最小范围。
配置不足可能增加存储读取、拖慢查询并触发扩展。配置过高则会让未使用的内存和 CPU 持续可用。两种错误都会削弱资源消耗与应用价值之间的联系。
Databricks 表示,Lakebase 自动扩缩容控制会监测 CPU 负载、内存使用情况和工作集估算。管理员可定义服务在其中响应的最小和最大边界。
每个容量单位提供 2 GB RAM。自动扩缩容目前支持最高 64 个容量单位,即 128 GB 的端点;更大的工作负载可以使用固定配置。
有几项约束值得注意。最小值和最大值之间的差额不得超过 16 个容量单位。scale to zero 仅限于最大值不超过 32 个容量单位的端点。
高可用端点无法扩缩至零。其备用计算资源也必须至少保持与主端点当前容量相当,以确保随时具备故障切换能力。
这些限制说明,“只为实际使用付费”需要谨慎解读。高可用意味着预留的运行准备能力。严格的延迟要求同样可能要求容量始终处于活跃状态。
并发会带来另一种容量规划压力。较小的工作集并不意味着较小的端点就能处理大量同时到达的请求。即使缓存性能出色,复杂查询和后台任务仍可能消耗 CPU。
索引同样会影响工作集。应用可能只访问很小一部分行,却依赖多个大型索引。团队在估算缓存需求时,需要将这些结构纳入考虑。
因此,有意义的比较并不是将 Lakebase 与一个没有任何运行约束的假想数据库相对照,而是在相同的可用性、延迟和吞吐目标下,对比弹性容量与固定容量。
Databricks 的 Lakebase architecture 通过将预写日志和数据库页面外置,使无状态 Postgres 计算成为可能。本地内存和磁盘随后充当性能缓存。
预写日志会在修改后的页面被重写之前记录数据库变更。Lakebase 将这份持久化记录发送至分布式服务,同时由独立的页面服务将数据具体化到对象存储中。
由于计算层不拥有持久状态,因此无需迁移整个数据库便可启动、停止或复制。这正是弹性计算与共享存储的技术基础。
不过,远程持久存储并不会消除本地性的价值。缓存未命中仍然比命中内存更慢。如果团队既希望性能可预测,又希望降低支出,仍须理解访问模式。
这正是 Lakebase 对传统固定容量模式施加最大压力的地方。固定配置将过剩容量隐藏在稳定的月度资源占用中。Lakebase 则暴露出工作负载的波动性,并要求运营人员加以控制。
这种可见性很有价值,但如果缺少良好的可观测性,成本的可预测性可能会降低。频繁扩缩、缓存未命中或创建大量端点的工作负载,可能产生需要主动解读的支出模式。
恢复和可用性限制了节省成本的叙事
最有力的质疑是,较低的闲置成本可能会以同步、保留和运行准备成本的形式在其他环节重新出现。
时间点恢复(PITR)会保留将数据库恢复到指定时刻所需的变更历史。Lakebase 允许团队将恢复窗口配置为 2 至 30 天。
这段历史所需的存储空间会随写入活动和保留时长增长。即使活跃数据库仍然紧凑,一个写入密集型服务配合较长的恢复窗口,也可能累积大量恢复数据。
快照解决的是另一类问题。它们通过手动操作或按每日、每周、每月计划捕获离散恢复点。首次计划快照为完整快照,之后的快照则仅存储增量变更。
Databricks 建议将 PITR 用于不可预测的事件,包括误删除和错误写入。快照则适用于计划内检查点,例如迁移或批量更新之前的时段。
这种分工可以减少不必要的保留。团队可以缩短连续恢复窗口,同时为更长期的运营需求保留选定检查点。
不过,不应仅为了降低存储消耗而尽量缩短恢复设置。合适的窗口取决于组织的恢复目标、审计义务,以及快速发现故障的能力。
如果细微的数据错误两周后才被发现,七天窗口提供的保护就很有限。反过来,如果政策只要求在较短时段内恢复,保留最长历史也没有太大价值。
高可用带来了类似的权衡。共享存储避免了第二份完整数据副本,但冗余计算资源仍必须保持就绪。该端点无法暂停至零。
因此,具有严格服务目标的应用仍将保留一部分基础计算资源投入。Lakebase 可以减少存储冗余,但无法消除为运行准备状态所付出的成本。
同样的谨慎也适用于只读副本。它们的共享存储效率很高,但独立计算资源仍会消耗资源。若未验证查询压力便添加副本,只是将过度配置转移到另一层。
同步也有自己的计费维度。Synced Tables 使用的托管管道计算资源,与数据库计算资源分开计费。一个看似适度的 Lakebase 端点,旁边可能运行着昂贵的持续数据管道。
这种分离有利于成本归因。但当平台团队监控数据库、而数据团队控制同步时,也可能造成职责分散。
Databricks 通过系统计费表应对这一问题。数据库计算、分支存储、分支变更、恢复历史和同步使用情况均可分别查看。
该指南称,团队可以查询 system.billing.usage,并将使用情况与有效目录价格关联。客户协商的专属条款不会出现在这些估算中。
这形成了一个实用的验证闭环。团队可以将项目标识符关联至数据库使用情况,再通过管道标识符检查同步管道。
计费数据应与应用遥测数据结合。若延迟违规增加、缓存未命中上升,或用户在等待陈旧数据,更低的计算账单意义不大。
同样,只有在由此产生的数据新鲜度仍可接受时,降低同步频率才算优化。成本和服务质量必须出现在同一份审查仪表板中。
Databricks 在其 2 月正式发布公告中表示,其采用率增长速度超过其数据仓库产品的两倍,并称已有数千家公司在运行生产工作负载。
这些是公司自行报告的采用信号,而非独立的成本验证。Databricks 尚未发布广泛的客户基准,证明 Lakebase 能够在各类工作负载中降低数据库总支出。
其示例展示了技术机制和配置选择,但不能替代针对具体应用的比较;后者还应纳入迁移工作、工程时间、数据传输、可观测性和运营风险。
最站得住脚的解读应更为谨慎:Lakebase 为团队提供了更多将支出与工作负载行为对齐的方法。这些控制措施是否能降低总成本,仍是每次部署都需实证回答的问题。
团队应使用具有代表性的流量来检验这一问题,而非进行短暂的演示。测试应包含冷启动恢复、缓存未命中、同步积压、故障切换行为和恢复演练。
较低的平均账单可能掩盖昂贵的峰值。平滑的基准测试可能掩盖冷路径延迟。紧凑的数据库可能掩盖持续运行的同步服务。
Lakebase 的成本论点能够经受这些批评,是因为 Databricks 现在直接指出了这些权衡。不过,购买方应将该指南视为一项测量计划,而非有保证的财务结果。
三项信号将显示这一模式是否有效
下一批证据应来自生产环境中的实际行为,而非又一份架构优势清单。
第一项信号是,客户如何在 Snapshot、Triggered 和 Continuous 同步模式之间分配工作负载。若 Triggered 模式配合基于更新的激活机制被广泛使用,将支持 Databricks 的主张:团队可以平衡数据新鲜度与成本。
若大量依赖 Continuous 模式,则会削弱这一论点在许多运营型应用中的说服力。这表明,尽管底层数据库采用无服务器模式,实际客户需求仍使管道计算资源必须持续运行。
第二项信号是,随着工作集增长,自动扩缩是否仍能维持可预测的延迟。团队应在具有代表性的生产高峰期间,关注缓存命中表现、存储读取、扩缩频率和尾延迟。
在较窄的计算资源范围内维持稳定延迟,将强化反对固定峰值配置的理由。频繁的缓存抖动,或反复接近最大容量,则表明某些工作负载需要更大的基础容量。
第三项信号是数据库和管道资源间成本归因的质量。Databricks 已提供使用类别,但客户仍需要与应用关联的持久化仪表板、预算和告警。
清晰的归因可让工程团队了解,数据新鲜度设置、分支、副本或恢复策略何时改变了支出。归因薄弱则会使弹性平台比熟悉的固定实例更难治理。
这些信号的重要性不止于 Databricks。无服务器 Postgres 供应商正日益围绕暂停、分支、共享存储和工作负载感知扩缩展开竞争。差异化重心正转向集成、治理、可观测性和稳定的生产行为。
Lakebase 在 Databricks 客户账户中也具备优势。Unity Catalog 数据可以进入运营型 Postgres 环境,无需使用独立管理的反向 ETL 产品。
这种集成可以减少工具蔓延,但也可能加深平台依赖。购买方应评估,自己能否轻松检查、导出和复现每一条管道及恢复流程。
随着团队应用 9 月的指导意见,未来一到三个月应会产生更好的证据。有价值的报告将比较配置变更前后的同步数据量、管道运行小时数、活跃计算资源和延迟。
一份可信的案例研究应包含服务目标,而不仅是节省百分比。它应说明数据新鲜度、可用性、恢复覆盖范围和响应时间是否保持不变。
目前,Lakebase Postgres 成本优化建立在合理机制之上,但附带运行条件。共享存储减少数据冗余。弹性计算降低闲置容量。选择性同步减少数据移动。
这些机制没有一个能自行决定应用应采用的正确设置。团队仍需要对工作负载分类、测量工作集、设定恢复目标,并检查彼此独立的计费维度。
先从一个具有代表性的服务开始,记录其当前数据范围、数据新鲜度目标、峰值并发量、恢复窗口和延迟目标。然后将每项要求映射到一项 Lakebase 设置,并在多个工作负载周期内测量完整系统。应包括数据库计算、同步表管道、存储增长、缓存行为和冷启动恢复。决策应基于观察到的服务质量和总资源使用量,而非一句架构口号。若 Lakebase 在减少闲置容量和数据冗余的同时满足应用要求,该模式便值得扩大应用范围。若它将支出转移到持续管道或过大的缓存中,则应在迁移下一项工作负载前修订配置。



