第1页
神盾开放通用推荐系统
雷小平 qq:106093647 email:leixp3636@qq.com
腾讯 社交网络事业群 数据中心
第2页
2016-4-21
第3页
个人团队介绍
个人简介
雷小平
QQ大数据团队平台组组长
推荐系统/分布式计算
团队简介
QQ的基础数据挖掘系统
产品应用系统的研发和运营
http://www.csdn.net/article/2014-07-03/2820520
大数据解决方案
神盾
- 开放通用推荐系统
ADS - 数据集市解决方案(第29届中国数据库学术会议)
COW - 分布式流数据存储系统
R2 - 分布式实时计算系统(2014年全球互联网大会)
LBS云
- 提供统一的LBS云服务
其他
- hadoop、storm、spark
第4页
目录
1. 背景介绍 2. 架构介绍
2.1 架构总览 2.2 分布式计算 2.3 数据引擎 2.4 海量画像 2.5 实时ABTEST 2.6 立体监控 2.7 通用开放
3. 运营情况
第5页
目录
1. 背景介绍 2. 架构介绍
2.1 架构总览 2.2 分布式计算 2.3 数据引擎 2.4 海量画像 2.5 实时ABTEST 2.6 立体监控 2.7 通用开放
3. 运营情况
第6页
1 背景介绍(1) - 有哪些产品?
关系链推荐
关系链
文本/音频/视频
APP
特权
第7页
1 背景介绍(2) - 有哪些场景?
QQ
LBS推荐
企鹅FM
相关推荐
全民K歌
社会化推荐
QQ音乐
兴趣推荐
第8页
1 背景介绍(3) - 有哪些交互?
QQ会员
用户浏览
企鹅FM
产品push
QQ空间
用户反馈
腾讯课堂
交互式推荐
第9页
目录
1. 背景介绍 2. 架构介绍
2.1 架构总览 2.2 分布式计算 2.3 数据引擎 2.4 海量画像 2.5 实时ABTEST 2.6 立体监控 2.7 通用开放
3. 运营情况
第10页
2.1 架构总览 -系统要解决的问题
数据 来源:千级
规模:亿万级
场景 场景:千级
业务需求
计算 复杂度:百万
延时:50MS
通用
开放
第11页
2.1 架构总览 – 架构图
第12页
2.1 架构总览 - 架构特点
A 分布式计算引擎
数据引擎
C 海量画像
实时ABTEST
E 立体监控
开放通用
B D F
第13页
2.2 分布式计算引擎(1) – 计算流
海选 初选 精排 重排
Ø获取有效池子 Ø分人群等
Ø性别,年龄,行为等用户属性 ØCF,热传导等 Ø识别某些CVR高,但是用户不喜欢的badcase Ø应用宝广告推荐提升超过20%
ØLR/GBDT/CF等 Ø多维度特征
Ø曝光衰减 Ø产品规则 Ø其他badcase
第14页
2.2 分布式计算引擎(2) – 复杂计算
要解决的问题:复杂计算VS低延时要求
以QQ好友推荐的抽象逻辑为例:
常规计算
:sum(t1)+sum(t2)+sum(t3)+…
分布式实时计算 :max(t1)+max(t2)+max(t3)+…
第15页
2.2 分布式计算引擎(3) – why not storm
l 面向服务
Ø 稳定性 Ø 流量控制
l 性能
Ø 数据拷贝 Ø 资源
l 运维
Ø 动态负载均衡 Ø 自动扩缩容
l 开发
Ø 多线程调试
第16页
2.2 分布式计算引擎(4) – 解决方案R2
l 解决的问题
Ø 大计算量与低延迟 Ø 即时数据/处理/应用
l 适用业务
Ø 计算量比较大 Ø 对低延迟要求较高 Ø 实时数据计算&处理
l 计算模式
Ø 类map-reduce Ø 实时化,多层化
第17页
2.3 数据引擎(1) – 数据流
第18页
2.3 数据引擎(2) -账号体系打通
QQ IMEI GUID
QQ IDFA
第19页
2.3 数据引擎(3) – 行为数据存储cowplus
Ø 数据量:300T+ Ø 访问量:百亿级访问 Ø 多场景,多维度读取
Ø 时间维度淘汰 Ø 多索引查询 Ø 简单计算
第20页
2.3 数据引擎(4) – 高速cache
Ø 每秒千万级读写 Ø 随时更新,秒级生效 Ø 数据一致性 Ø 通用数据格式
Ø Client按需拉取 Ø 数据一致性 : MD5+ VERSION Ø 数据更新不影响服务:主备切换
第21页
2.3 数据引擎(5) –多数据源读取优化
Ø 读取多种存储系统 Ø 同步编码:开发快,性能差 Ø 异步编码:性能高,开发慢
Ø STEP1:同步编码获取数据源
Ø 协程 Ø 多数据源同步编码,异步执行 Ø 通用接口
Ø STEP2:异步并行拉取数据源
第22页
2.4 海量画像
l 10多亿用户,几十款产品 l 上千种画像维度 l 多渠道准确度评估
第23页
2.5 实时ABTEST(1) – 整体架构
l 分钟级别更新 l 小时维度展示
配置页面
效果展示页面
策略下发 SERVER
Web SERVER
效果查询CGI DB 实时 离线
计算 计算
第24页
2.5 实时ABTEST(2) – 用户配置
l ABTEST策略配置
l 效果指标配置
第25页
2.5 实时ABTEST(3) – 效果展示
l 恶意数据过滤 l 效果平滑处理 l 效果波动告警
第26页
2.6 立体监控(1) – 线上服务监控
l 业务总体监控
Ø 请求量 失败量 平均延时 。。。
l 重点函数调用次数监控
Ø 历史对比 Ø 波动告警
第27页
2.6 立体监控(2) – 其他监控
l 计算过程重放
l 推荐效果监控
Ø 恶意数据过滤 Ø 效果平滑处理 Ø 效果波动告警
l 数据监控
Ø 数据依赖 Ø 失败告警/重传
第28页
2.7 通用开放(1) – 通用接入
接入
效 果
评 效果
估
计算 上报
l 接入
Ø系统注册 Ø接入API
l 计算
Ø算法选择 Ø参数配置
l 上报
Ø上报字段配置 Ø上报API
l 效果
Ø效果展示字段设置 Ø效果查看
第29页
2.7 通用开放(2) – 训练开放
特征 构造
算法 选择
特征 选择
训练
第30页
2.7 通用开放(3) – 计算开放
l 数据传递方式
<key, value>
PU1 PU2
l 计算逻辑
Ø用户自定义custom pu逻辑
PU
PU PU PU <key, value> CUSTOM PU
PU
第31页
2.7 通用开放(4) –自定义计算
l说明
ØR2提供库文件,由用户引用 Ø用户只用实现代码逻辑函数"proc"即可。(其余功能由系统完成)
l步骤
Østep1 继承基类PuPB,实现proc函数
Østep2 make
第32页
目录
1. 背景介绍 2. 架构介绍
2.1 架构总览 2.2 分布式计算 2.3 数据引擎 2.4 海量画像 2.5 实时ABTEST 2.6 立体监控 2.7 通用开放
3. 运营情况
第33页
3 运营情况(1) – 系统
l 海量
Ø 日调用:数十亿 Ø 扩散量:数百亿
l 实时
Ø 90%以上请求在20MS之内 Ø 所有请求处理延时50ms之内
l 稳定性
Ø 系统稳定性99.95% Ø 确保每个消息的可靠传递
第34页
3 运营情况(2) – 运营
l 典型业务
l 运营
Ø 场景:近200个 Ø 业务接入:2人
l 应用宝推荐效果
Ø 推荐分发占可控分发超过80% Ø 为应用宝带来超过60%的收入提升
l 手游推荐
Ø Banner场景为业务带来530%的效果提升 Ø 每天带来的下载超过百万
第35页
欢迎加入腾讯QQ大数据团队