【算法与数据中台】走马观花
中台火了?中台凉了?其实需求一直在,只是名称和概念起起伏伏罢了。
更新历史
- 2022.03.17:开始阅读
- 2022.03.18:完成初稿
读后感
职业生涯里一直在和各种算法和数据平台打交道,无论是叫中台还是后台,实际上都是通过资源的调度来提升工作流的效率,而这个是和不同的业务场景紧密相关的。对于技术人员来说,关键还是如何能在尽量复用的前提下提升解决问题的效率,这个才是技术人的安身立命之本。
这本书总体来说属于知识的收集与汇总,对于具体实战介绍得比较少,可以当个科普数据大致了解整体架构,但是对于已经在做这一块的同学来说,用处就不是很大。
读书笔记
算法与数据中台概述
- 中台建设的目标和意义
- 数据整合:全域数据背后的深层次价值
- 技术沉淀:统一建设与管理
- 能力共享与功能复用:打破协作壁垒
- 引领组织价格重塑
- 通用技术体系
- 在线算法平台
- 倒排检索系统
- 相似检索系统
- 策略机制引擎
- 模型预估服务
- 动态配置系统
- 特征服务
- 多租户平台
- 效果监控系统
- AB 实验平台
- 在线开关系统
- 机器学习平台
- 深度学习框架
- 算法组件
- 模型管理
- 特征管理
- 模型可视化
- AutoML
- 作业调度
- 数据标注
- 样本拼接
- 样本管理
- 分布式数据库平台
- 键值数据库
- 表格数据库
- 缓存数据库
- 图数据库
- NewSQL
- 关系数据库
- 对象存储数据库
- Gossip 协议库
- 分布式事务协议库
- 分布式一致性协议库
- 大数据平台
- 集群管理系统
- 分布式协调系统
- 分布式文件系统
- 分布式计算系统
- 数据查询系统
- 数据仓库系统
- 数据可视化平台
- 消息管道系统
- 基础设施平台
- 代码构建系统
- 通用压测服务
- 服务发布平台
- 服务注册发现
- 监控告警系统
- 持续集成系统
- 远程通信框架
- 日志检索平台
- 服务治理平台
- 链路跟踪系统
- 在线算法平台
- 研发项目典型工作流程
- 项目管理:项目立项、设计文档撰写、任务分解
- 代码研发:代码修改(单元测试、人工审查、持续集成)、代码提交
- 服务部署:压力测试、灰度上线、正式上线
在线算法系统
AB 实验系统的整体架构
- 实验操作平台:实验创建、效果展示、实验审核、实验记录
- 配置动态分发系统:代码审核、灰度发布、全量发布、配置获取
- 流量标签 SDK:配置加载、流量分配、标签计算、日志落盘
- 大数据平台:实时计算、标签收集、离线计算、行为收集
机器学习平台
机器学习建模任务的全流程
- 业务需求、业务建模
- 数据收集:数据集成、数据清洗、数据规约、数据变换
- 数据探索分析
- 特征工程
- 模型训练、参数优化
- 模型评估
- 模型上线
- AB 测试
- 线上预测
- 效果监控
- 数据回流、数据模型迭代
分布式数据库
- ACID 理论
- 原子性 Atomicity:事务的整体性和不可分割性
- 一致性 Consistency:在事务发起、运行和结束的全流程中,数据库的完整性约束没有被破坏
- 隔离性 Isolation:用于数据库事务的并发控制,具体分为未提交读(Read-Uncommitted)、提交读(Read-Committed)、可重复读(Repeatable-Read)和串行化(Serializable)
- 持久性 Durability:事务所做的任何修改都会被持久化地存储在数据库中
- CAP 理论:一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition-Tolerance)这三个特性中的两个
- 强一致性、弱一致性、最终一致性
- BASE 理论:基本可用(Basically-Available), 软状态(Soft-State), 最终一致性(Eventually-Consistent)
- 数据分片策略
- 哈希取模分片
- 无状态、易于实现
- 节点数量变化需要大量数据迁移
- 一致性哈希分片: Amazon Dynamo, Apache Cassandra
- 解决了大规模数据迁移问题
- 在负载均衡上不完美,只有相邻的物理节点才能分担存储和访问流量的压力
- 连续区域分片策略: Google BigTable
- 满足时间局部性原理和空间局部性原理
- 应对数据负载变更时比较复杂,但迁移数据量较小
- 哈希取模分片
- 数据复制策略:异步复制、同步复制
- Gossip 协议: Apache Cassandra, Consul
- 优点:简单、可扩展性、去中心化、健壮性
- 缺点:消息延迟、消息冗余、弱一致性
- 分布式一致性协议
- Paxos 理论上解决了分布式一致性问题
- Multi-Paxos 大幅提升运行性能和工程可行性
- Raft 增强可理解性并降低实现难度
- 分布式事务协议
- 二阶段提交协议
- 三阶段提交协议
推荐系统
推荐系统通用架构
- 业务流量入口:信息流推荐、相似推荐、关系推荐、个性化消息
- 在线投放服务
- 特征与画像服务:统计、序列、组合、向量、标签
- 召回与索引服务:标签、规则、关系图、语义、向量
- 在线预估服务:LR GBDT FM DNN
- 排序策略服务:动态配置、流量标签、负反馈、竞价机制、冷启动、多样性、上下文理解、自定义运营逻辑
- 在线存储系统:SQL NoSQL NewSQL
- 集群管理平台:日志分析、性能监控、链路跟踪、负载均衡
- 数据挖掘平台:内容理解、用户理解、标签生产、行为分析
- 机器学习平台:样本拼接、特征处理、模型训练、模型评估、上线发布、AutoML
- 数据管道与数据仓储平台:日志收集、数据清洗、反作弊、大数据处理、流式计算
- AB 实验平台
- BI 商业分析平台
- 用户数据与站外数据接入服务