最近数据库圈和 AI 圈都在聊同一件事:ClickHouse 拿了 4 亿美元融资,同时把 AI 可观测性初创公司 Langfuse 收编了。这两条消息放在一起看,信息量比单看任何一条都大得多。我的判断是,这已经不是一次普通的“融资 + 收购”,而是 ClickHouse 从“数据库公司”走向“AI 应用基础设施公司”的一个关键信号。
这篇文章不聊八卦,只聊技术逻辑。我会从这笔交易背后的行业背景、Langfuse 的核心技术价值、ClickHouse 的产品战略意图,以及对我们这些实际写代码、搭系统的人有什么影响,一层一层拆开来讲。适合正在做 AI 应用开发、做大模型基建,或者正在纠结“要不要上可观测性工具”的开发者阅读,也适合做技术选型决策的团队参考。
1. 先说结论:这 4 亿美元花得不只是“扩团队”这么简单
1.1 官方口径背后,其实藏着两条线
从公开信息看,这笔 4 亿美元融资主要用于加速核心数据库业务的研发和全球市场扩张,而收购 Langfuse 则被描述为“增强 AI 可观测性能力”。这两件事放在一起并非巧合。数据库公司在正常融资周期内顺手收购一家 AI 初创公司,大多数情况下不是为了财务回报,而是在补自己产品版图里最缺失的那块拼图。
朗费斯(Langfuse)做的事情,简单说就是给大模型应用装上“仪表盘 + 黑匣子”。它负责记录每一次 LLM 调用、追踪 Agent 的完整思考链路、管理 Prompt 版本、做质量评估。这类能力恰好落在数据库与上层应用之间。ClickHouse 本身擅长存储和查询海量结构化、半结构化数据,但要把 LLM 应用的事件流、追踪数据、评估结果变成客户看得懂的东西,就需要一个专门的应用层工具。Langfuse 就是那个工具。
打个不那么严谨的比方:ClickHouse 是高速公路本身,Langfuse 是高速公路上的监控摄像头和交通导流系统。之前 ClickHouse 把路修得很宽很结实,但没有摄像头,谁在超速、哪段路堵了、车辆的完整行驶轨迹根本看不清。现在把监控系统装上了,整条路的数据价值才真正打通。
1.2 数据库公司为什么要碰“可观测性”这种应用层生意
很多朋友会问:数据库厂商做得好好的,为什么非要往应用层工具去延伸?答案很简单:因为 AI 应用开发者的痛点和以前不一样了。
传统应用开发,你写了一个接口,出了问题,通过日志、APM、链路追踪可以定位到具体代码。但 LLM 应用完全不同。同样一段 Prompt,昨天输出很好,今天因为模型版本微调,结果就变了;一个 Agent 有七八个工具调用,中间某一步的上下文被覆盖,最后答案就错了;token 成本看起来不高,但单用户会话多了之后,费用曲线陡得吓人。这些问题的根因不在代码里,而在模型行为、Prompt 设计、上下文管理、工具调用链路里。
传统可观测性工具处理不了这类数据。它们面向的是“确定性的请求-响应链路”,而 LLM 应用的数据是“非确定性、多分支、高度依赖上下文”的事件流。把这类数据记录好、查得快、分析得准,本身就是数据库的活儿。ClickHouse 收购 Langfuse,等于把“分析引擎”和“分析应用的采集层”焊在了一起。
2. 为什么偏偏是现在:AI 应用已经卡在“黑盒”这个坎上了
2.1 LLM 应用的调试逻辑,和传统开发完全不是一回事
我在实际项目里踩过太多坑:本地测试一切正常,一上生产就翻车。传统后端出问题,可以先看日志,找到异常堆栈,复现问题,修复然后回归。LLM 应用没法这样干——很多“问题”它不报错。模型不会告诉你“我生成这段回答的时候,其实遗漏了检索到的关键上下文”,它只会给你一个看似通顺但实际错误的答案。
这种场景下,靠 log 是不够的。你需要知道的是:这个用户的一次会话里,Prompt 到底发了什么、模型返回的原始输出是什么、Agent 每一步选择了哪个工具、工具返回了什么、上下文窗口被什么内容占满了、这轮调用的 token 成本是多少、用户有没有对结果点“踩”。只有把这些信息完整串起来,才有可能定位一个 AI 应用的隐蔽 bug。而 Langfuse 这类工具的核心理念,就是把这一切结构化地记录成 trace。
Trace(用户一次完整操作) └── Observation(一个节点,可以是 span 或 generation) ├── 输入/输出内容 ├── 模型名称与参数 ├── token 用量与成本 ├── 时间戳与延迟 └── 元数据(用户ID、session、版本等)这个结构不难理解,但真正做到生产级可用的实现非常少见,原因在于数据的体量、格式、查询模式极其特殊,这也是后面我要重点展开的部分。
2.2 AI 可观测性已经从“加分项”变成“基础设施”
我观察到一个明显趋势:从 2024 年下半年开始,但凡 AI 应用进入生产环境的团队,几乎都会遇到同三个问题:质量不可控、成本算不清、问题不可追溯。前段时间我和一个做 AI 客服系统的朋友聊天,他说他们线上每天有几万次模型调用,出问题需要排查时,只能靠第三方供应商的原始请求日志,翻得头昏眼花,连“这个用户到底经历了什么”都拼凑不完整。
这不是个例。早期大家做 AI 应用,最关心的是模型能不能跑通、效果好不好;现在模型能力已经不是瓶颈,跑通很容易,但运营层面的东西——Prompt 迭代多了怎么管理、效果下降了怎么归因、单个用户会话赔了多少钱——全都变成新问题。可观测性工具从“锦上添花”变成了“没有它就没法做生产”。这个需求窗口期,恰好被大厂看到了。
2.3 全球 AI 可观测赛道里,Langfuse 为什么是那个“值得买”的资产
做 LLM 可观测性的公司不少,但 Langfuse 有几个很特别的地方。它坚持开源,有一个活跃的社区;它的集成生态做得细,主流的 LLM SDK、框架基本都有现成插件;它对私有化部署和自托管支持得很好,这对很多数据敏感的企业来说是硬需求。当然,对于收购方来说,还有一点很关键:Langfuse 是一个被真实用户验证过的产品,不是纸上谈兵的框架。买一个已经被几百上千个团队用在生产环境的工具,比从零自建省下太多时间。
3. Langfuse 到底做了什么:被很多人低估的 AI 调试工具箱
3.1 核心概念:Trace、Span、Generation 到底怎么理解
Langfuse 的数据模型核心是 Trace 和 Observation。Observation 又分为 Span 和 Generation 两种类型。很多刚接触的朋友会混淆,我用自己的理解翻译一下:
- Trace:一次端到端的用户请求,比如“用户问了一个问题,Agent 依次调用了检索工具、模型、生成最终回答”,整个过程算一个 trace。
- Span:一个具体的执行单元,比如“调用一次检索工具”就是 span,它可以嵌套,表示执行流程的层级关系。
- Generation:一种特殊的 span,专门表示 LLM 调用,会额外记录模型名、Prompt/Completion、token 用量、成本等模型特有信息。
把它们组合起来,代码层面的使用方式也很直观:
from langfuse import Langfuse langfuse = Langfuse() with langfuse.trace(name="agent-answer", user_id="user_123") as trace: with trace.span(name="retrieve-context") as span: span.update(input={"query": "ClickHouse是什么数据库"}) with trace.generation(name="llm-generate", model="gpt-4o", input="根据以下上下文回答问题...", output="ClickHouse是一个开源的列式数据库...", usage={"input": 120, "output": 45}) as gen: pass这套封装逻辑的价值在于:它把 AI 应用里最常需要追溯的上下文信息全部结构化地记录下来了。排查问题时,你不再需要翻多层日志,而是一眼看到一个用户请求的完整生命周期。
3.2 Prompt 管理、评估与数据闭环:Langfuse 不只是“看着”
如果 Langfuse 只是记录调用记录,那它也就是个日志工具,还撑不起“被收购”的价值。它真正的差异化在于,它把可观测性和 Prompt 工程打通了。Langfuse 提供 Prompt 版本管理,同一个 Prompt 可以发布多个版本,线上请求会自动绑定当前版本号。当模型输出质量下降时,你可以直接对比不同版本的 Prompt 输入输出差异,精准定位是哪次修改导致了回退。这解决的是 LLM 应用日常迭代里最令人头疼的“不可复现”问题。
另外还有评估体系。你可以定义评估规则,比如用 LLM-as-judge 对输出质量打分,也可以接入人工标注和用户反馈(点赞、点踩、评价)。这些评估结果会和 trace 关联在一起,形成数据闭环。说得直白一点:Langfuse 不仅告诉你“发生了什么”,还帮你分析“这件事是好是坏”。这个能力对于团队内部复盘模型行为、决定要不要调整 Prompt 或更换模型,都极有价值。
3.3 数据特征决定存储选型:Langfuse 天生就需要 ClickHouse 这类引擎
这里就得回到数据库视角了。Langfuse 需要处理的数据长什么样?一是有海量的小事件(每次模型调用、工具调用都是一条记录),二是 JSON 嵌套深(trace 里嵌套 span,span 里还有各种 attribute),三是查询模式固定但复杂(按 trace 查看整条链路、按时间聚合统计成本、按用户维度分析行为、按 model 维度对比质量)。这四个特征放在一起,传统关系型数据库会很吃力,而 ClickHouse 几乎是解这道题的最优解。
ClickHouse 的列式存储、稀疏索引、向量化执行,处理“海量事件写入 + 秒级聚合分析”这类负载非常有优势。一个 Langfuse 自托管实例里的核心表,本质上就是一个超大事件表,最常见的 SQL 长这样:
SELECT model_id, count() AS total_calls, sum(total_tokens) AS total_tokens, sum(total_cost) AS total_cost FROM observations WHERE type = 'GENERATION' AND timestamp >= now() - INTERVAL 7 DAY GROUP BY model_id ORDER BY total_cost DESC;这类查询在 ClickHouse 里跑得很舒服。所以你可以理解成:Langfuse 把 AI 应用的可观测性需求翻译成了数据库查询需求,而 ClickHouse 恰好在底层接得又快又稳。这笔收购往深处看,其实是两层技术栈的高度互补。
4. 底层逻辑拆解:ClickHouse 为什么要选择“买下”而不是“自建”
4.1 从“卖数据库”到“卖 AI 应用基础设施”的战略抉择
ClickHouse 本身的强项是作为 OLAP 查询引擎,服务的场景包括用户行为分析、可观测性数据存储、日志分析等。但过去,它面向的是通用数据分析需求;现在 AI 应用爆发,大量新数据天然带着“AI 属性”——模型名、Prompt 版本、token 用量、工具调用顺序、上下文内容。假若 ClickHouse 只做一个通用引擎,客户要分析这些数据,还得自己找工具去采集、清洗、建模。这个门槛太高,不利于扩张。
收购 Langfuse 之后,ClickHouse 可以直接面向客户提供一个开箱即用的 AI 可观测性产品。用的还是 ClickHouse 做存储查询,但客户不需要自己设计 schema、不需要写采集管道、不需要维护一套追踪系统。这种从“我给你一把好枪,你自己去装瞄准镜”到“我把整套系统组装好给你”的转变,就是在从卖零件变成卖终端产品。
4.2 产品整合后想象空间:数据链路、私有化部署和场景价值
结合 ClickHouse 的能力和 Langfuse 的采集层,有几点想象空间非常实际。第一,统一的数据链路:未来 Langfuse 的 trace 数据可以直接以 ClickHouse 表的形式开放给客户,分析师可以用 SQL 直接做深度的钻取聚合,而不必再通过 API 导出。第二,私有化部署:很多企业出于数据安全考虑,希望可观测系统跑在自己的内网里。Langfuse 本来就支持自托管,ClickHouse 也支持多种部署形态,两边整合后,私有化交付的体验会很顺。第三,成本优势:ClickHouse 的存储压缩率和查询性能都很出色,对于每天产生海量 trace 数据的 AI 应用,存得久、查得快、花得少,这些都是可直接量化的价值。
4.3 谁是赢家:两种用户视角下的交易评估
对于已有的 Langfuse 用户来说,被 ClickHouse 这样有成熟商业体系的数据库公司收购,多数情况下是好事。产品能获得更稳定的资金支持,底层存储可以获得更深的性能优化,商业可持续性也比创业公司单打独斗强很多。更关键的在于,面向企业客户时,采购一套“数据库 + 可观测性”的整体方案,比分别买两个产品要容易得多。
站在 ClickHouse 既有用户的角度,这笔收购意味着你的分析数据库多了一个非常肥沃的应用场景。以前你在 ClickHouse 里存用户行为数据,现在还能直接存 AI 应用的追踪和评估数据,一个技术栈覆盖两类需求。对于已经在用 ClickHouse 做日志和指标存储的团队,这套整合几乎是零学习成本的增量价值。
5. 对技术选型的影响:做 AI 应用,别再自己拼日志系统了
5.1 自己拼接可观测性方案的三个致命问题
有不少团队在早期图省事,自己往现有日志系统里打 JSON,然后查询靠 grep。我见过太多这种方案最终走向失控,而且失控的方式都类似。
第一个问题是数据模型对不上。传统日志系统设计时考虑的是“按时间顺序排文本”,而 LLM trace 需要的是“按层级关系组织输入输出”。你强行把 trace 拍平成日志,查询时根本拼不回完整调用链。第二个问题是查询性能扛不住。AI 应用的海量事件,用 grep 或全文检索去查,一旦数据量上来了,一次查询等半天,没有任何分析价值。第三个问题是没有人维护提取逻辑。每当模型供应商返回格式微调、字段增减,自建解析代码就得跟着改,这种隐性维护成本非常容易被架构评审忽略。
5.2 三种容易后悔的做法与两条务实建议
我总结了几类实际踩过的坑,列出来给各位参考:
| 典型做法 | 潜在风险 |
|---|---|
| 只在测试环境做 Prompt 调优,不记录线上 trace | 线上问题没有任何回溯依据,只能靠用户反馈被动发现 |
| 紧盯 token 成本,忽略质量与成本的关系 | 只看账单,但不知道哪一类 prompt 在“烧钱还出错” |
| 自建可观测模块,并分配给普通后端开发维护 | 低估 schema 设计和采集稳定性成本,后期返工严重 |
两条务实建议:第一,从应用开发的第一天就把 trace 埋点设计进去,不要等出问题再补。Langfuse 这类产品提供了 SDK,集成成本很低,但数据积累是不可逆的——错过早期数据,后面想分析也没历史可用。第二,优先选择支持私有化部署、不锁定于单一云厂商的方案。AI 应用迭代极快,你的可观测性数据如果被绑死在某个封闭平台里,后续迁移和整合的成本会非常痛苦。
5.3 对未来技术栈的判断:数据平台会吃掉可观测性市场
从这笔收购,我延伸出对未来技术栈的一个判断:未来两三年,可观测性赛道会明显向数据平台方向整合。单纯做告警、做图表的前端工具会被压缩生存空间;而拥有较强底层数据引擎能力的玩家,会通过收购或自研把采集、存储、分析、评估打通。对开发者来说,选型时优先看“它背后的数据引擎是谁、数据开放程度如何”,而不是看 UI 和仪表盘做得多漂亮。漂亮的界面不代表问题能定位,能让你直接用 SQL 去查询分析的数据底座,才是真正能陪你走三年的东西。
6. 结尾:我看到的两层信号
写到这里,我特别想分享一个个人观察。在消息刚出来的时候,很多群聊讨论的核心是“4 亿美元估值贵不贵”“这笔投资值不值”。我的看法是,相比投资金额,收购 Langfuse 这一动作所表达的行业信号更值得关注——它说明 AI 应用的下一阶段比拼,已经不是谁的模型选得好,而是谁能更快地发现和修复问题。可观测性就是这种问题发现与修复能力的基础,所有想把 AI 应用做成可靠产品的团队,都需要关注这一环。
至于 ClickHouse 收购后的实际整合效果,我会继续用一个普通开发者的视角,关注它未来会不会把 Langfuse 的数据模型开放成标准 SQL 表结构、会不会推出更深的 ClickHouse 专属优化。建议你也别只看热闹,实际去部署一套 Langfuse,在你的 AI 应用里加几条 trace 埋点跑一周,看看数据能给你带来怎样的复用价值。这个体验,比我在这里说一百遍“可观测性很重要”都更直接。