张安站 百度垂直搜索产品技术中台的战略与战术

文字内容
1. 百度垂直搜索中台的战略略与战术 张安站 百度 资深研发⼯工程师
4. 张安站 百度垂直搜索中台技术负责⼈人 14年加入百度,从事分布式架构相关研发工作 • 搜索引擎,机器学习平台,NLP基础技术服务化&平台化 • 分布式存储系统,商业存储阵列 • 大规模集群调度,成本优化 • 嵌入式系统从OS到应用的全栈视野
5. 1. 产品分析与中台整体设计 2. 支持深度可定制、高度可复用的战术 3. 追求更高服务质量的战术 4. 追求更高效率、更高效业务协同的战术 5. 技术中台的价值与思考
6. 为大家提供最优质的搜索结果,是我们的核心职责
7. 搜索越来越智能,注重搜索体验的直接满足 交互和展现方式越来越丰富,用户需求的满足越来越人性化 内容的形态越来越多样,图文、视频、小程序等 …
8. 多业务形态背后的技术复杂度 业务 形态 搜索结果页 结果页跳出页 小度在家 … 深耕 类目 内容 提供方 音乐 景点 小说 … 自建内容 内容合作方 全网优质内容 … 高频 变更 海量流量冲击 系统可用性 如何高效支持这些业务的快速迭代、降低试错成本? 加强技术创新?
9. 面对多业务发展的技术需求,我们团队开始了建设 垂直搜索中台 的征途
10. 业务不同发展阶段对中台的不同需求和中台目标 从0到1 从1到N 垂直搜索中台 整体目标 •目的:验证可行性 •关键:需要极低人力成本和时间周期 •目的:业务深耕,需求突破,实现持续增长 •关键:深度定制实现业务特有逻辑,完备技术能力 • 1. 建设通用能力和定制能力,实现高效接入和上线 • 2. 技术驱动增长,持续创新交付可增长方案 • 3. 打造极致用户体验,建设领先的稳定性、速度和成本机制
11. 垂直搜索中台整体架构设计 • 设计原则 检 索 流量接入 需求识别 统一开发IDE ü 效率优先,平台化、自助化 全流程开发调研环境 展现策略 ü 微服务化,组件化 机器学习 ü SET部署,完全隔离 配置管理平台 配置分发,系统平台化 在线排序 内容开放平台 优质内容引入 • 特点 ü 3层业务框架,业务深度定制 倒排召回 向量召回 存储系统 自动运维,一键式构建 内容生效 内容审核 内容控制 离线训练 ü 声明式设计 ü 完备能力市场,业务自主选用 ü 能力沉淀机制,开放、共享 应用引擎 trace/debug 自助实时追查、定位 内容 内容引入 内容加工 干预数据 行为数据
12. 框架的设计 • 目标 ü 业务仅需关注特有逻辑,通用的框架满足 ü 框架配置化使用基础lib,提升代码复用率 • 设计原则 ü 统一接口:按照接口设计,增强约束力 ü 统一基础:线程模型、组件等,实现业务聚焦业务开发 ü 机制复用: 业务可以通过修改配置实现机制复用
13. 面向业务升级、开发的友好设计 流程式:新业务 api:存量核心业务 api-lite: 维护性业务
14. 如何应对高频变更、流量成分差异巨大对系统可用性的冲击? • 高可用的挑战 query识别解析,确定流量类型 ü 流量大:入口流量天级数十亿,集群内部数百亿 ü 成分复杂: 来源多 * 数千种 类型 对不同流量类型强实时统计 ü 超大扇出:每次检索会召回多个结果,集群内部放大超百倍 根据流量优先级做异常降级 • 超大规模下,异常是常态;预案只能防止灾难 ü 智能降级,自动屏蔽和隔离异常流量 ü 难点:理解流量,精准降级,精准恢复,认真对待每一次降级 自动恢复
15. 充分重视cache对搜索场景的巨大价值 性能 • 速度、容量 • 时效性、效果 • 万无一失 容灾 • 可以无损 • Bad Case 远程 VS 本地 • 各有优缺点 • 极端场景下, 本地cache 很重要 实际策略更复杂,异步更新、预充、失效时间动态设置等。 中台将cache功能集成到框架中,业务配置化使用。 默认一律上cache;量级如此大的cache, 成本?
16. 如果追求极致的性能? 通用做法 Cache 串行改并行 同步改异步 在线改离线 编译参数优化 充分利用硬件资源(GPU/FPGA) Backup请求 非核心资源主动降级防退化机制 防退化 仿真环境测试 预上线环境测试 流量网关实时拦截 完备的性能分析套件
17. 海量内容的实时生效/建库:基于kafka构建内容实时生效架构 • 内容生效架构(data path):内容从引入 到线上生效的全流程,架构主通路 • 内容控制架构(control path):以id为基 本单位的控制逻辑,管理生效架构 • 平台 ( view & config all):系统的可视 化, 问题追查自助化, 及架构的平台化
18. 内容实时生效架构 != 离线,需要更高可用性、更高实时性 • 越来越多的场景需要实时生效 ü 体育直播、股票价格&曲线 ü 小说连载更新、商品上下架 • 越来越重的内容加工策略 ü 规模大、策略重 • 保证数十万data/s生效可用性和时效性 ü 拦截、回放、热备通路
19. 通用能力和定制能力完备了,服务质量高, 就可以高效支持好几十个业务发展? 还需要以效率为先的机制创新
20. 全流程的自动化研发工具链,追求无人化,避免无用功 1 2 系统设计时将效率作为核心目标之一,夯实效率根基 统一集成开发环境,开发和线上仿真环境无缝打通 3 全流程视角的研发效能提升,增加人效值
21. 增加能效的例子: 基于kafka + ES构建的近实时千亿级内容生效追查工具 • 内容无法生效的原因追查是刚需 ü 导致线上有损,值周生必须指定时间内恢复&定位 ü 无法及时生效、拥塞、内容格式异常等等 ü 错误不可枚举,自动化追查工具是唯一解法 • 架构设计的艺术 ü 近期的数据已经全量存入kafka,另辟蹊径 ü 折衷,平衡 ü 成本?
22. 中台的通用能力和定制能力完备了,服务质量高, 机制上中台团队和业务可以高效协同, 还需要群体的技术创新,技术驱动增长
23. 直接驱动业务增长的应用技术创新,是中台的重要使命 • 通过死磕业务场景,发现增长曲线的微创新 ü 可能需要技术系统的重大升级 • 通过应用最新的研究成果,打造领先的产品效果 ü 新的算法催生新的突破,促进整体效果的提升 • 大部分的创新都可以低成本辐射核心业务 ü 中台具备群体加速创新,促进创新叠加的基础 ü 积木式创新使得业务创新成本大大降低 理解用户需求 精准改写 场景特定的 复合模型排序 海量内容质 量准确理解
24. 经过中台技术的系统构建,面向业务高效迭代的机制建设, 中台为业务的快速、可持续发展做出了巨大贡献
25. 技术中台的价值与思考 技术 飞轮效应 业务发展 创新 叠加 沉淀共享 业务滋养 创新叠加、经验沉淀、能力复用,使得支持多业务的中台技术 持续自我演化,技术驱动增长
26. 总结 效率优先,业务增长,群体创新叠加,是中台技术发展的原动力 高度抽象与实际落地的gap,需要中台注重面向业务友好的设计 针对老系统,只有面向业务&兼顾未来的全新顶层设计,才能彻底解决问题 ALL Unified in ONE是重要基础,技术统一才能在多个业务发挥规模效应 技术先行 关注业界技术趋势 技术 驱动 增长 技术创新 创新驱动业务发展
29. 欢迎和我技术交流 zhanganzhan@baidu.com