
❝"我们真的要把 Doris升级到4.0 版本吗?这可是生产环境。"资深DBA老刘皱着眉头,手里拿着技术部的升级计划书。 "必须升级,你知道吗?现在的 Doris 4.0 能轻松实现AI+数据分析了。"CTO老王神秘地笑了笑,"不信你去看看
AI_AGG函数的演示。" 两周前,老刘对这句话是半信半疑的。直到他亲眼看到了那个令人震撼的演示...
那天下午,运维组的同事小陈在测试环境跑了一段SQL语句。屏幕上显示的是他们公司客服系统的工单数据,密密麻麻上万条中文咨询记录。
"我们用传统的方法,要分析完这些工单,得需要多长时间?"小陈故意问了老刘一个老生常谈的问题。
老刘算了算:"人工处理的话,三千条记录,至少需要两个人工作一周时间。"
"现在呢?"小陈点了回车键。
屏幕上出现了这样的结果:
SET default_ai_resource = 'ai_resource';
SELECT
issue_type,
AI_AGG(
issue_content,
'用最简洁的语言总结问题原因和影响,分析可能的技术问题'
) AS issue_analysis
FROM customer_tickets
WHERE DATE >= '2024-01-01'
GROUP BY issue_type;
三秒钟后,Doris返回了结果:
登录问题:涉及密码重置失败、二次验证重定向异常,需要重点关注SSO服务稳定性
支付异常:重复扣费和订单状态异常,建议优化支付流程的事务处理机制
页面加载慢:主要集中在数据大屏模块,需要考虑前端缓存策略优化
"这就是AI读懂中文的结果?"老刘眼睛瞪得跟铜铃一样。
更让他震惊的是,这种理解不是简单的关键词匹配,而是真正的语义分析。
两条描述略有差异的用户反馈:"页面卡顿"和"加载响应慢",在AI_AGG的聚合分析中被正确归为了同一类问题。
看到这个演示,老刘脑子里浮现了一个根本性的问题:AI时代下的数据库到底应该是什么样?
传统的数据库是什么样子?存储数据、查询数据,仅此而已。但 Apache Doris 4.0 的发布,似乎把数据库的边界重新划定了。
那天晚上,老刘加班研究了这个函数的底层原理,发现了一个很有趣的技术设计:动态预聚合机制。

好比数据库要处理一万条用户评论。如果把这些文本都直接送给AI,模型肯定消化不了。Doris的做法很巧妙:它会监控缓冲区大小,当要超出128K阈值时,先让AI处理当前缓冲区的内容,生成摘要,然后用这个更简洁的摘要替换原始文本,为新数据腾出空间。
"这就像一个智能的压缩器。"老刘在笔记本上写道,"不断接收新信息,处理后保留精华丢弃冗余,最终形成对整个数据集的精准理解。"
这种设计让他想到了一些深层次的问题:当数据库具备了理解能力,它还只是存储工具吗?
第二天,老刘在晨会上提出了这个观点:"我觉得AI_AGG可能不仅仅是 Doris 增加了一个AI函数,而是在重新定义数据库的本质。"
会议室里安静了几秒钟,大家都在消化这个观点。
"什么意思?"技术总监问道。
"以前我们说数据库是存储系统,现在Doris除了能存储,还能在数据层面进行理解和分析。这相当于给数据库装上了AI大脑。"
老刘越说越兴奋:"以后的数据分析师要分析用户情绪,不需要先写Python脚本调用NLP服务,然后导入导出数据。他们只需要在Doris里写一行SQL就够了。"
他当场展示了另一个完整例子:Doris x AI 分析电商平台的用户评价。
-- 测试表
CREATETABLE product_reviews (
review_id BIGINT,
product_id BIGINT,
rating TINYINT,
comment STRING
)
DUPLICATEKEY(review_id)
DISTRIBUTEDBYHASH(product_id) BUCKETS 10
PROPERTIES (
"replication_num" = "1"
);
-- 测试数据
INSERTINTO product_reviews VALUES
(1, 1001, 5, '鞋子尺码刚好,穿着舒服,颜色也好看,物流很快!'),
(2, 1001, 4, '质量不错,就是鞋底有点硬,需要磨合几天。'),
(3, 1001, 3, '外观和图片一样,但收到时有轻微胶味。'),
(4, 1002, 5, '杯子小巧,出汁快,清洗也方便,上班带着刚好。'),
(5, 1002, 3, '声音有点大,不过能接受,充满电只能榨 5 杯。'),
(6, 1002, 2, '用了两周就充不进电,售后换货流程太慢。'),
(7, 1003, 5, '面料透气不闷热,袖口设计很贴心,UPF50+ 确实晒不黑。'),
(8, 1003, 4, '颜色好看,但拉链有点卡顿,需要用力。'),
(9, 1004, 5, '降噪给力,地铁里也能安静听歌,续航一周充一次。');
-- 使用 AI_AGG 总结聚合评价
SET default_ai_resource = 'ai_resource_name';
SELECT
product_id,
AI_AGG(
comment,
'请把多条用户评价总结成一句话,突出买家最关心的优点和缺点,控制在50字以内。'
) AS 评价摘要
FROM product_reviews
GROUPBY product_id;
结果同样令人震撼:
+------------+--------------------------------------------------------------------------------------------------------------+
| product_id | 评价摘要 |
+------------+--------------------------------------------------------------------------------------------------------------+
| 1003 | 该产品面料透气、防晒效果好且颜色美观,但拉链使用不顺畅。 |
| 1004 | 用户评价该产品降噪效果好,续航能力强,一周充一次电。 |
| 1001 | 买家普遍认为鞋子穿着舒适、外观好看且物流快,但鞋底偏硬且有轻微胶味。 |
| 1002 | 买家认为该榨汁杯小巧便携、出汁快且易清洗,但电池续航短且售后换货流程慢。 |
+------------+--------------------------------------------------------------------------------------------------------------+
AI_AGG不仅识别了买家最关心的优缺点,还提取了具体的评价细节。更重要的是,所有这些分析都在 Doris 内部完成,没有任何外部依赖。
看到这些演示结果,大家意识到,这种变化可能标志着数据库技术发展的一个新方向:从存储引擎向AI数据库的转变。
技术的进步从来不是线性的,而是跳跃性的。
当数据库具备了理解能力,当SQL语言能够直接处理自然语言,当数据存储和分析无缝融合——我们正在见证一个技术范式的转变。
现在回想起来,那次升级到Doris 4.0的发布,可能是公司近年来做的最正确的技术决策之一。不是因为它解决了一个具体的技术问题,而是因为它开启了一个新的技术时代——AI数据库时代。
而我们,正处在这个时代的起点。
完