• 欢迎访问少将全栈,学会感恩,乐于付出,珍惜缘份,成就彼此、推荐使用最新版火狐浏览器和Chrome浏览器访问本网站。
  • 吐槽,投稿,删稿,交个朋友
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏少将全栈吧

AI应用数据库选型:4种Serverless方案真实成本对比

Build in Public admin 59分钟前 4次浏览 已收录 扫描二维码

选数据库这件事,比选框架还纠结

做AI应用的开发者大概率遇到过这个问题:数据库放哪。

如果你的应用就是个API包装层,用户数据不多,随便选一个都能跑。但当你需要存对话历史、管理用户会话、缓存embedding结果,数据库的选型就开始影响你的成本结构和开发体验了。

我花了几天时间对比了4个主流Serverless数据库方案,把官方定价页面翻了个底朝天。不是做评测报告,是帮我自己做决策,顺便分享给你。

四个选项,各自定位完全不同

Cloudflare D1:边缘SQLite,便宜到离谱

D1是Cloudflare基于SQLite的边缘数据库。它的计费方式和其他几个完全不同,按行读取量和写入量收费,不按计算资源收费。

根据Cloudflare官方定价页面,Workers Free计划每天500万行读取、10万行写入、5GB存储。Workers Paid计划每月包含250亿行读取和5000万行写入,超出后行读取$0.001/百万行,行写入$1.00/百万行,存储$0.75/GB-月。

什么概念?一个存储10万条用户对话记录的表,每次查询读取100行,每天查询1000次,一个月3000万行读取。在Workers Paid的250亿免费额度里,连零头都算不上。

D1最大的优势是和Cloudflare Workers生态深度绑定。如果你的AI应用已经部署在Workers上,D1是阻力最小的选择。但它是SQLite,不是Postgres。没有pgvector扩展,复杂查询能力有限。

Supabase:Postgres全家桶,Auth/Storage一站式

Supabase本质是托管Postgres,但加了Auth、Storage、Realtime、Edge Functions一圈周边。免费计划500MB数据库、5GB流量、5万月活用户,但闲置一周会自动暂停。Pro计划$25/月起,8GB数据库、25万月活用户,还送$10计算额度。

Supabase的杀手锏是生态完整。你的AI应用需要用户登录、文件上传、实时推送,Supabase一个平台全包了。不用 separately搭Auth服务、不用单独搞对象存储。这个省下来的精力和服务器成本不能忽略。

但注意一点:Pro计划$25是平台费,计算资源另算。一个Micro实例大概$10/月,如果你有两个项目,总费用是$25 + $10×2 – $10 = $35/月。比我一开始以为的$25要高。

Neon:Serverless Postgres,按秒计费

Neon现在是Databricks旗下的产品,定位是云原生Serverless Postgres。最大的卖点是scale-to-zero:没有请求时不收计算费。

Neon的计费单位是CU-hour(计算单元×小时),1 CU大约等于4GB RAM + CPU + SSD。Free计划5分钟无活动自动暂停,Launch计划可以关闭或配置暂停时间,Scale计划完全可配置。

对于流量不稳定的AI应用来说,这个模式很友好。白天用户活跃时计费,凌晨没人用时归零。Supabase的Pro计划不管你用不用都是$25+,Neon可能一个月算下来才几美元。

但Neon只做数据库,不提供Auth和Storage。你需要自己搭用户认证和文件存储方案。

Turso:SQLite的分布式版本

Turso基于libSQL(SQLite的fork),主打多数据库实例。免费计划可以创建100个数据库,5GB存储,每月5亿行读取。Developer计划$4.99/月,无限数据库数量,9GB存储。

Turso的定位比较特殊。它不是Postgres,功能不如Supabase和Neon丰富。但它可以给每个用户创建独立数据库实例,做租户隔离特别方便。如果你的AI应用是企业级SaaS,需要客户数据物理隔离,Turso这个模式值得考虑。

成本对比:同一场景下的真实账单

假设一个场景:AI应用有500个活跃用户,每个用户每天产生20条对话记录,每条记录平均500字节。每天1万条新记录,每月30万条。查询方面,每天平均5000次查询,每次读取约50行。

月读取量:5000 × 50 × 30 = 750万行。月写入量:30万行。存储需求:30万 × 500字节 ≈ 150MB。

这个规模下:

  • Cloudflare D1:Workers Paid $5/月。750万行读取远在250亿免费额度内,30万行写入远在5000万免费额度内,150MB存储在5GB免费额度内。总费用约$5/月。
  • Supabase Free:$0。150MB在500MB限制内,500活跃用户在5万限制内。但一周不活跃会被暂停,生产环境不靠谱。升Pro $25/月。
  • Neon Launch:按量计费。假设每天活跃12小时,0.25 CU,月费用约0.25 × 12 × 30 = 90 CU-hour。存储150MB可忽略。总费用大概$2-5/月,取决于实际用量。
  • Turso Free:$0。750万行读取在5亿限制内,30万行写入在1000万限制内,150MB在5GB限制内。完全免费。

这个规模下Turso和D1最便宜。但把规模放大10倍(5000用户、月读取7500万、月写入300万、存储1.5GB),情况就变了:

  • D1:存储超出5GB免费额度前还有空间,行读取7500万仍在250亿内。总费用约$5 + $0.75 × 1 ≈ $5.75/月。
  • Supabase Pro:$25 + 可能需要更大计算实例。约$35/月。
  • Neon:计算量增加10倍,月费用约$20-50,取决于暂停时间配置。
  • Turso:Developer计划$4.99/月,7500万行读取在25亿限制内,300万行写入在2500万限制内,1.5GB在9GB限制内。约$4.99/月。

选型建议:别只看价格

成本只是决策因素之一。几个需要一起考虑的点:

和你的技术栈是否匹配。如果前端部署在Cloudflare Workers上,D1零延迟访问是巨大优势。如果用Drizzle或Prisma ORM,Supabase和Neon的Postgres兼容性更好。

是否需要Postgres扩展。pgvector、pg_cron、PostGIS这些扩展只有Supabase和Neon有。D1和Turso是SQLite系,生态完全不同。

开发速度vs成本控制。Supabase一站式方案开发最快,但月费固定。Neon按量计费最省钱,但需要自己搭周边服务。这个tradeoff要想清楚。

数据隔离需求。做多租户SaaS,Turso的一租户一数据库模式天然隔离。其他方案需要在应用层做逻辑隔离。

我的判断是:早期MVP阶段用Turso Free或D1免费计划,零成本跑起来。验证后需要Postgres能力时迁到Supabase Pro。流量稳定且需要精细控成本时再考虑Neon。这不是唯一答案,但是一个风险最低的路径。

喜欢 (0)赏
[🍬谢谢你请我吃糖果🍬🍬~]
分享 (0)
关于作者:
少将,关注Web全栈开发、项目管理,持续不断的学习、努力成为一个更棒的开发,做最好的自己,让世界因你不同。