带你读《Apache Doris 案例集》——05 当 Apache Doris 遇上大模型:探秘腾讯音乐如何 基于大模型+ OLAP 构建智能数据服务平台(3)

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 带你读《Apache Doris 案例集》——05 当 Apache Doris 遇上大模型:探秘腾讯音乐如何 基于大模型+ OLAP 构建智能数据服务平台(3)

更多精彩内容,欢迎观看:

带你读《Apache Doris 案例集》——05 当 Apache   Doris 遇上大模型:探秘腾讯音乐如何 基于大模型+ OLAP  构建智能数据服务平台(2):https://developer.aliyun.com/article/1405739


Apach  Doris性能优化实践 

 

Colocate Join 宽表优化 

image.png

 

在上文架构改造中我们提及,由于宽表开发会不断叠加字符数据,消耗存储空间,降低查询性能,因此我们充分利用了Colocate Join 功能对宽表拆分、本地关联查询加速进行优化,具体过

程如下:

 

●指标大宽表:采用 Apache Doris Aggregate  Key 模型,使用增量的方式将数据覆盖写入;

 

缓慢维度表:主要通过start_date  end_date   的设置进行表建设,同时利用end_date   行分区,当我们需要查询最新的维度数据时只需要将 end date设置为‘9999-12-31'即可。此外我们引用 Doris 2.0版本中的写时合并,利用 Unique Key 模型进行维度数据聚合,使查询性能在该场景中得到很大的提升。

 

●对外访问视图:在指标与维度表建设完成之后,利用CREAT   VIEW 提供统一对外访问视图,同时添加 end date条件,使视图保持最新数据的展示。通过这样的方式不仅能够大幅度降低查询的复杂性,还能够充分利用 Doris 特性实现查询加速。

 

Rollup 解决指标膨胀问题

 

宽表拆分为指标表与维度表后,我们发现每一次视图产生都需要定义多个指标,出现指标膨胀的情况。以歌曲播放量结算为例,当仅定义单一指标时,我们需要将各个平台+各类内容进行排列组合,使语义层定义很多指标数据,造成指标数量过多。此外这些指标都需要通过离线生产任务进行加工,并通过 Hive 导入至Apache Doris 中,造成链路较长、加工维护比较困难。


平台指标:覆盖四大音乐平台,包括酷我、QQ 音乐、酷狗、K

内容指标:包含歌曲、歌手、专辑以及厂牌等数据

image.png

 为了有效解决指标膨胀问题,我们引入了Doris  Rollup 功能。如图所示,在 Doris  Base 表数据基础之上,可以根据指定维度来创建任意多个 Rollup 视图并自动进行 GROUP  BY,  实现各个平台与各类内容指标定义不重复、查询性能提升的目标。

 

 物化视图实现查询加速 

 image.png

 除了减少指标数量外,我们还希望能够衍生指标并且做到查询加速。Apache Doris 2.0 版本中我们采用了物化视图功能进行衍生指标的开发。目前,我们主要在单一维度表中单独地去查询自定义标签与维度,在定义复杂口径后自动的通过语义层物化任务。

 

如上图所示我们将指标 M1M2M3与维度T1T2T3分别进行定义,并通过SUM 加工衍生标签,在加工完成之后创建物化视图加速查询。此外,Doris后续2.1版本中还会支持多表创建物化视图,我们也非常期待使用该功能。

 

 Apach Doris 导入性能调优实践

 

目前,腾讯音乐具有90+数据来源表、 3000+维度和指标、导入数据量达到千亿级别,我们希望数仓能够支持大规模数据快速导入,且导入过程中保证数据写入的准确性。

 image.png 

 

导入链路如图所示,主要分为离线与实时两个部分,离线链路中指标表与变更维度表通过Spark进行批量导入,两类表利用Flink聚合形成宽表后写入;实时链路主要利用Kafak消息队列进行流式写入。最终,离线与实时两条链路利用Flink实时写入Apache Doris数仓中。

 

由于 Flink 聚合为攒批写入,如果出现写入任务失败,会导致数据丢失;同时,在聚合任务过多、字段过多的情况下存在Compaction不及时的情况,导致实时能力不可控;此外在加工宽表的过程中,也会造成重复写入的问题,无法保证数据写入准确性。 

 

Apache Doris 2.0版本发布后,我们引入了其全新功能 Flink Doris ConnectorDoris Compaction,有效解决了 Flink聚合引起的问题。

 

Flink Doris Connector 实现快写入

 

Flink Doris Connector主要是依赖Checkpoint机制进行流式写入,同时该功能默认开启两阶段提交,保证写入过程中 Exactly Once 语义。值得注意的是,我们在引入最新版的 Flink Doris Connector 功能后,实现了从关系型数据库到Apache Doris 的一键整库同步,承载了我们实际业务中千亿级别的实时并行写入,满足数据快写入与不丢不重的需求。

 

Doris  Compaction 保证写入稳定性

 

为了解决 Flink 聚合引起的偶发性Compaction 不及时问题,我们引入最新版的 Vertical CompactionSegment  Compaction功能。

 

·VerticalCompaction功能优势:在单次合并过程中,我们不需要再将所有的列读出,只需要加载部份列数据即可,这能极大减少合并过程中的内存占用问题,提高压缩的执行速度,实现在大宽表场景下的部份数据合并。 

 

· Segment   Compaction功能优势: 在单批次大数据量的导入场景下可以有效减少 Flink写入

过程中产生的Segment数量,且能够使合并和导入两个过程并行,避免增加导入时间。

image.png

 如上图所示在引入Doris Compation 功能后,在写入量增加50%的情况下,Compaction Score 从平均650分降低至80分,技术人员不再需要担心夜间出现告警的情况,保证了整体链路的稳定性。 

 

 总结收益与展望 

 

在引入 Apache Doris 后,数据架构围绕降本增效的目标,不仅在写查方面的性能得到大幅度提

升,并且有效减少架构成本与资源开销,具体的收益如下:

 

极速查询分析: 通过 Apache DorisRollup物化视图、倒排索引功能,由原来的分钟级查询时间达到现如今秒级毫秒级;

 

 

导入性能提升:导入优化完成后,原本3000+维度、指标数据的导入时间需要超过一天,现如今能够在8 小时内完成导入,导入时间缩短至原来的1/3,实现快速导入需求;更重要的是,ApacheDoris 在保证数据快写入的同时,使数据能够不丢不重、准确写入:

 

链路极简与统一:ApacheDoris将查询与分析出口引擎统一,去除 Elasticsearch 集群使架构链路极简;

 

存储成本降低:通过大宽表拆分的方式,使存储成本降低30%,开发成本降低40%

 

在未来,我们将进一步拓展使用Apache   Doris 湖仓一体功能,对Hive MySQL、数据湖等多源异构数据库进行网关统一,实现真正意义上的实时统一分析引擎。同时,尝CCR跨集群数据同步功能,通过用户多集群的数据库表自动同步以提升在线服务数据的可用性。未来,我们也将在测试环节中验证读写负载分离以及多机房备份的性能效果。

 

目前,Apache Doris 社区已经公布了后续版本中将推出的存算分离全新架构,能够利用低成本 的共享存储系统简化上层计算节点的复杂度,使架构带来巨大的成本经济优势。我们也希望能够进一步探索,基于 Apache  Doris 本地高速缓存+共享存储系统的混合模式,在保障性能的同时降低系统存储开销。

 

最后,非常感谢SelectDB 技术团队的积极响应与专业解答,希望通过这篇文章分享大语言模型在互联网业务中的应用,也欢迎更多人参与Apache Doris社区与超音数平台的开源框架构建。最后,我们也会持续参与社区活动,将相关成果贡献回馈社区,希望Apache Doris飞速发展,越来越好!

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
1月前
|
SQL 存储 缓存
顺丰科技:从 Presto 到 Doris 湖仓构架升级,提速 3 倍,降本 48%
顺丰科技引入 Doris 替换 Presto,在内部可视化数据自助分析工具丰景台场景广泛应用。目前,顺丰临时查询业务、丰景台报表业务的 Presto 场景已经 100% 切换到 Doris 集群中,日均查询量 100W+。并实现 P95 性能提升近 3 倍,硬件资源节省达 48% 显著收益。
顺丰科技:从 Presto 到 Doris 湖仓构架升级,提速 3 倍,降本 48%
|
1月前
|
人工智能 自然语言处理 数据挖掘
云上玩转Qwen3系列之三:PAI-LangStudio x Hologres构建ChatBI数据分析Agent应用
PAI-LangStudio 和 Qwen3 构建基于 MCP 协议的 Hologres ChatBI 智能 Agent 应用,通过将 Agent、MCP Server 等技术和阿里最新的推理模型 Qwen3 编排在一个应用流中,为大模型提供了 MCP+OLAP 的智能数据分析能力,使用自然语言即可实现 OLAP 数据分析的查询效果,减少了幻觉。开发者可以基于该模板进行灵活扩展和二次开发,以满足特定场景的需求。
|
1月前
|
人工智能 自然语言处理 小程序
蚂蚁百宝箱 3 分钟上手 MCP:6 步轻松构建 Qwen3 智能体应用并发布小程序
本文介绍如何用6个步骤、3分钟快速构建一个基于Qwen3与蚂蚁百宝箱MCP的智能体应用,并发布为支付宝小程序。通过结合Qwen3强大的语言理解和生成能力,以及支付宝MCP提供的支付功能,开发者可轻松打造具备商业价值的“数字员工”。案例以“全球智能导游助手”为例,支持119种语言,不仅提供旅行建议,还能收取用户打赏。文章详细说明了从登录百宝箱、创建应用、添加插件到配置角色、发布上架及手机端体验的完整流程,同时提醒当前支付功能仅适用于测试环境。适合希望探索AI应用变现潜力的开发者尝试。
263 14
|
1月前
|
关系型数据库 OLAP 数据库
拒绝等待!阿里云瑶池数据库 x Qwen3,构建增强式RAG
阿里巴巴发布的通义千问Qwen3在性能上超越多个国际顶尖模型,阿里云瑶池数据库已适配该模型,支持私域部署并与Dify无缝集成。传统RAG方案在处理复杂关系和多跳推理时存在局限,而GraphRAG通过图结构存储知识,结合Qwen3和AnalyticDB PostgreSQL,可有效解决这些问题,提升知识关联检索与分析能力。某新零售客户案例表明,GraphRAG能更好地满足高复杂度业务需求,提供直观的知识图谱可视化服务。阿里云提供Qwen3全系列模型的私域部署解决方案,确保数据安全和服务稳定性。
|
2月前
|
人工智能 自然语言处理 知识图谱
Yuxi-Know:开源智能问答系统,基于大模型RAG与知识图谱技术快速构建知识库
Yuxi-Know是一个结合大模型RAG知识库与知识图谱技术的智能问答平台,支持多格式文档处理和复杂知识关系查询,具备多模型适配和智能体拓展能力。
317 0
Yuxi-Know:开源智能问答系统,基于大模型RAG与知识图谱技术快速构建知识库
|
1月前
|
人工智能 自然语言处理 机器人
阿里云百炼xWaytoAGI共学课 DAY4 - 小白也能在阿里云百炼手搓Qwen3,构建Qwen3赋能的英语学习智能体“妮娜”
本次课程通过构建"英语老师妮娜"AI应用,教授Qwen3系列模型特性及阿里云百炼平台的MCP服务、工作流集成技术。重点学习模型选择、智能体开发流程,涵盖单词卡片生成、结构化分析、Notion存档及二维码分享功能,适合开发者、产品经理等人群掌握AI应用落地方法。
|
29天前
|
人工智能 测试技术 API
通义灵码 + 魔搭MCP:全流程构建创空间应用
最近,通义灵码上线 MCP(ModelScope Cloud Platform)功能,从之前代码生成及修改的基础功能,到可以使用MCP服务连接更多功能,开发者可以实现从 代码爬取、模型推理到应用部署
446 26
|
2月前
|
自然语言处理 安全 数据挖掘
Hologres+函数计算+Qwen3,对接MCP构建企业级数据分析 Agent
本文介绍了通过阿里云Hologres、函数计算FC和通义千问Qwen3构建企业级数据分析Agent的解决方案。大模型在数据分析中潜力巨大,但面临实时数据接入与跨系统整合等挑战。MCP(模型上下文协议)提供标准化接口,实现AI模型与外部资源解耦。方案利用SSE模式连接,具备高实时性、良好解耦性和轻量级特性。Hologres作为高性能实时数仓,支持多源数据毫秒级接入与分析;函数计算FC以Serverless模式部署,弹性扩缩降低成本;Qwen3则具备强大的推理与多语言能力。用户可通过ModelScope的MCP Playground快速体验,结合TPC-H样例数据完成复杂查询任务。
|
2月前
|
SQL 分布式数据库 Apache
网易游戏 x Apache Doris:湖仓一体架构演进之路
网易游戏 Apache Doris 集群超 20 个 ,总节点数百个,已对接内部 200+ 项目,日均查询量超过 1500 万,总存储数据量 PB 级别。
网易游戏 x Apache Doris:湖仓一体架构演进之路
|
2月前
|
存储 人工智能 数据处理
Apache Doris 2025 Roadmap:构建 GenAI 时代实时高效统一的数据底座
秉承“以场景驱动创新” 的核心理念,持续深耕三大核心场景的关键能力,并对大模型 GenAI 场景的融合应用进行重点投入,为智能时代构建实时、高效、统一的数据底座。
Apache Doris 2025 Roadmap:构建 GenAI 时代实时高效统一的数据底座

推荐镜像

更多