暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

美团点评万亿级KV存储架构与实践

面试哥 2020-02-27
821

最近在研究大厂技术框架,会不定期分享一些大厂的技术分析ppt,本次分享的是美团点评万亿级KV存储架构与实践,ppt作者为齐泽斌@美团点评。

以下为ppt内容:




文字版本:

  • 1. 美团点评万亿级 KV 存储架构与实践 齐泽斌 美团点评高级技术专家

  • 2. 在此键入姓名 在此键入tittle

  • 3. ⾃自我介绍 美团点评高级技术专家,KV 存储团队负责人,有 8 年以上分布式存储研发经验。2011 年天津大学毕业后加入百度,负责过分布式文件系统 MFS 和分布式 KV BDRP 系统研发及运营。2014 年加入美团,负责过分布式 KV 存储 Cellar、分布式缓存 Squirrel、数据传输 Databus 等系统研发及运营,主要关注于分布式存储技术领域。

  • 4. ⽬目录 • • • • 美团点评 KV 存储发展历程 内存 KV Squirrel 架构和实践 持久化 KV Cellar 架构和实践 发展规划和业界趋势

  • 5. ⽬目录 • • • • 美团点评 KV 存储发展历程 内存 KV Squirrel 架构和实践 持久化 KV Cellar 架构和实践 发展规划和业界趋势

  • 6. 美团点评 KV 存储发展历程 客户端 ⼀一致性哈希 memcached memcached 客户端 宕机、扩缩容 丢数据 ⼀一致性哈希 扩缩容丢数据 Redis Redis Redis Redis Redis Redis memcached

  • 7. 美团点评 KV 存储发展历程 config • 中⼼心节点脑裂 • 容灾、扩容难 config Tair 中⼼心节点 路路由表 客户端 ⼼心跳 读&写 A B 复制 C Tair 存储节点 D

  • 8. 美团点评 KV 存储发展历程 ⾃自研 + 社区 Redis Cluster ⾃自研 Tair • • ⽇日调⽤用量量均已破万亿 请求峰值均已破亿 Squirrel Cellar 全内存、⾼高吞吐、 低延迟 持久化、⼤大容量量、 数据⾼高可靠

  • 9. ⽬目录 • • • • 美团点评 KV 存储发展历程 内存 KV Squirrel 架构和实践 持久化 KV Cellar 架构和实践 发展规划和业界趋势

  • 10. KV 数据分布介绍 key HASH 固定HASH算 法 Slot 固定数目 数据分片 路路由表 Slot->存储节 点对照表 存储节点

  • 11. KV 架构和实践 高可用 • 宏观:容灾 • 微观:端到端成功率

  • 12. Squirrel 架构和实践 zookeeper 元数据更更新 元数据获取 调度服务 主1 客户端 主2 读&写 主3 管理理 Gossip 从1 从3 扩缩容服务 ⾼高可⽤用服务 从2 Redis集群 集群调度平台

  • 13. Squirrel—节点容灾 • 主库宕机恢复30s,从库 有必要等这么久吗?• 集群多,宕机后补副本 累坏人?HA⾼高可⽤用服

  • 14. Squirrel—节点容灾 摘除Redis2 替换Redis4 ZooKeeper • • 摘除Redis2 替换Redis4 Redis4 HA1 HA2 客户端 监控 Redis1 读 Redis4 Redis2 Redis3 Squirrel集群 Kubernetes 从摘除30s->5s 分钟级⾃自动扩容

  • 15. Squirrel—跨地域容灾 • • • 跨地域专线不稳定 跨地域专线有限的带宽 单元化部署,多活架构 集群间复制

  • 16. Squirrel—跨地域容灾 监控 manager manager 监控 同步调度 任务调度 从 Redis复制协议 同步机 主 从 从 主 从 同步机 Redis复制协议 从 写 同步机 主 从 写 主 从 从 北北京主集群 同步集群 上海海从集群

  • 17. Squirrel—端到端成功率 影响端到端成功率的因素:• 数据迁移造成超时抖动 • 持久化造成超时抖动 • 热点key请求导致单节点过载 • ···

  • 18. Squirrel—智能迁移 Redis提供数据迁移功能,但:• Slot迁哪些、往哪迁、谁来迁?• 想迁的快又怕太快影响业务?• 迁移大key阻塞业务请求?迁移服务

  • 19. Squirrel—智能迁移 就近原则 迁移任务 任务下发 ⽣生成 迁移Slot 客户端 读写 Redis1 Migrate 迁移 机1 • 节点间并发 • 批量量Migrate • 根据监控调速 迁移 机2 迁移Slot Redis2 Redis3 IDC1 服务状态反馈 Migrate Redis4 IDC2 成功率、耗时··· 监控服务 ⼤大key异步迁

  • 20. Squirrel—持久化重构 • 做不不起的RDB • ⽆无法避免抖动的AOF 重构持久化机制

  • 21. Squirrel—持久化重构 写请求 mem_backlog DB disk_backlog mem_backlog 异步 线程 RDB + disk_backlog RDB disk_backlog disk_backlog disk_backlog • • • • 减少全量量重传 减少并控制RDB 减少AOF写盘抖动 降低了了数据可靠性

  • 22. Squirrel—热点key 普通从 • • 普通主 统计 查询热点 监控服务 热 点 key 流控 普通主 热点Slot 迁移服务 热点Slot 迁移热点Slot 热点主 热点从 热点从 实时监控热点并止损 自动隔离热点并扩容

  • 23. ⽬目录 • • • • 美团点评 KV 存储发展历程 内存 KV Squirrel 架构和实践 持久化 KV Cellar 架构和实践 发展规划和业界趋势

  • 24. Cellar 架构和实践 ZooKeeper 元数据 路路由表 OB1 OB2 config config 中⼼心节点 客户端 ⼼心跳 读&写 A B 复制 C D

  • 25. Cellar—节点容灾 • 想快速Failover却承 • 担不起数据恢复的代价?运维操作导致请求超时?Handoff

  • 26. Cellar—节点容灾 • 秒级容灾 • 静默升级 中心节点 A恢复 A故障 客户端 分⽚片1请求 分⽚片1请求 A 1分片主 2分片备 ⼼心跳 ⼼心跳 分⽚片1复制 回写增量量log 分⽚片2复制 B 1分片备 2分片主 分⽚片1&2 log

  • 27. Cellar—跨地域容灾 • • • 跨地域专线不稳定 跨地域专线有限的带宽 单元化部署,多活架构 集群间复制

  • 28. Cellar—跨地域容灾 写 A B C D 集群内复制 客户端 北北京主集群 集群间复制 读 H J I 集群内复制 上海海从集 K

  • 29. Cellar—强⼀一致 ⽀支付等场景 数据不不能丢 共识协议:Paxos/Raft Raft:协议详实、⼯工程实践

  • 30. Cellar—强⼀一致 • multi Raft • 调度leader 客户端 读&写 Raft 复制组 读&写 读&写 读&写 Slot 1 Slot 1 Slot 2 Slot 1 Slot 3 Slot 2 Slot 3 Slot 2 存储节点3 存储节点4 Slot 3 存储节点1 存储节点2 Raft组调度 中⼼心节点

  • 31. Cellar—端到端成功率 影响端到端成功率的因素:• 数据迁移影响业务请求成功率 • 慢请求阻塞服务队列 • 热点key请求导致单节点过载 • ···

  • 32. Cellar—智能迁移 节点状态指标 Slot 1 • 引擎压力 • 网卡流量 量量 增 g lo 请求 客户端 迁移 Slot 2 响应 • 队列长度 • ··· 桶2 B节点状态 请求 代理理请求 响应 Slot 3 Slot 3 A节点 响应 B节点

  • 33. Cellar—快慢队列列 网络 线程 网络 线程 工作队列 工作 线程 读快队列 读快 线程 读慢队列 读慢 线程 写快队列 写快 线程 写慢队列 写慢 线程 慢请求:超时请 求 1:20 TP999延迟降 低86%

  • 34. Cellar—热点key 路由表&热点区域 热点key 中⼼心节点 客户端 写 • • 热点读彻底分散 热点读无延迟 读 热点区域管理 普通 数据 dataserver 普通复制 普通 数据 普通 数据 dataserver dataserver 热点复制 热点 数据 普通 数据 热点 数据 dataserver

  • 35. ⽬目录 • • • • 美团点评 KV 存储发展历程 内存 KV Squirrel 架构和实践 持久化 KV Cellar 架构和实践 发展规划和业界趋势

  • 36. 发展规划和业界趋势 服务 • Redis gossip 优化 • Cellar 中心节点 Raft • Squirrel & Cellar API 统一 • ··· 系统 • Kernel bypass(DPDK、SPDK) 硬件 • RDMA • 3D XPoint(Optane、AEP) • 计算型硬件(SSD + FPGA)

  • 37.

  • 38. 欢迎交流:qizebin@meituan.com



文章转载自面试哥,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论