移动 前端 Python Android Java

百分点推荐系统架构笔记

2020-06-11  本文已影响0人  zcwfeng

多年前的一个笔记,希望对大家有点用

思想理论

连通图,JS抓取,Cookie->跨浏览器->打通用户
获取方式
通过Js接口获取,抓取获取,线下数据获取。

底层架构初步认识

Kafka Storm Hadoop

推荐进化

单机时代
A推荐B B推荐C 

数据切换与备份

主从备份
双主机
分布式消息队列Kafka流处理

算法

协同过滤 关键词规则 热榜
自然语言处理
预测算法
时间序列

数据格式

Marshall
Json
Protobuf

采用的普通处理方式

推荐服务算法,固定算法

结构细节

在线算法和离线算法(处理2000条/s)

场景引擎

无目的浏览
离线学习和模型训练

规则引擎

决策树

展示引擎(弱化)

估算用户性质用来个性化展示
ABtest 进行验证数据模型和算法模型

大规模实时推算引擎

心跳,rpc框架,异步发送给Kafka(分为线上和线下)
solr进行并发索引
标准的cf算法
运用nginx
Kafka
Saas->Paas
Lambda架构

消息标记:UUID+时间戳

用户行为的时效性:KV方式的序列化,加入redis

Imdb 做主存

一致性:强一致性的存储,Kafka可以固化。数据分三份:内存和磁盘外加备份

Dat pu uv实时统计增量算法

搜索平台

支持自然语言处理,词库更新,垂直搜索引擎,分与搜索,行为相关运用分片存储,Master节点负责建立索引

SSD尝试

解决便宜数据,解决磁盘和数据的瓶颈(SSD应该用来作为内存使用,而不是存储)
上一篇下一篇

猜你喜欢

热点阅读