京东跨域存储实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1.
2. 京东跨域存储实践 打破数据孤岛实现数据共享 京东零售-数据与智能部 黄涛
3. 目录 01 大数据存储痛点 02 统一协议服务 03 跨机房数据融合 04 异构系统之高密存储
4. 01 大数据存储痛点 随着业务的调整与集群资源的整合需求,集群中的数据也需要进行适配。比 如大数据系统与业务系统资源进行错峰使用,离线在线系统混合部署,或是 业务方整合与迁移,还有集群机房的搬迁,都需要对数据进行重新编排与迁 移,适应新的应用场景。
5. 1.1. 大数据存储痛点 – 混合部署 大数据特点 • 海量数据强依赖机房内部网络 • 调度计算容易,调度存储困难 • 集群利用率存在明显波峰波谷 混合部署 • 优势:有效错峰利用资源 • 劣势:跨机房的网络访问限制了计算 资源的弹性能力
6. 1.2. 大数据存储痛点 - 跨机房同步 大数据网络 新增机房数据迁移需要业务介 入,成本高时间长 多机房冗余数据成本高,数据 共享和同步的成本高 跨机房容灾和高可用方案不完 善,未充分利用多机房优势 安全网络 Client Client Client 元数据 元数据 元数据 HDFS 集群 HDFS 集群 数据同步 数据同步需要借助外部调度系 统和存储 大数据机房-1 中 转 集 群 数据同步 大数据机房-2 HDFS 集群 数据同步 大数据机房-3
7. 02 统一协议服务 数据生产流程是从在线业务输出到实时机房,然后再搬运到离线机房进行汇 总提供给用户使用,数据搬运成本比较高 为了降低数据搬运成本和突破跨机房带宽的约束,达到用户对任务迁移无感 知的目标,我们设计了基于 RBF 的统一协议服务
8. 2.1 统一协议架构 基于 RBF 实现底层存储的统一访问 • • 屏蔽底层存储系统的差异 数据的迁移对用户是透明的
9. 2.2 基于 RBF 统一协议 - 挂载与转发 多租户管理 - 命名空间 数据生命周期管理 对接底层存储系统 • 用户接口 hdfs-client • 扩充接口支持异构系统 • 底层协议识别机制 用户访问管理 • 鉴权:Router/NN • 目录递归授权 • 多租户管理 oss 挂载 hdfs://rbf-ns/s3/abc s3a://abc ceph 挂载 hdfs://rbf-ns/cfs/dir file://dir 一对多挂载 hdfs://rbf-ns/user hdfs://ns1/mart;hdfs://ns2/user hdfs://rbf-ns/abc/ hdfs://ns1/abc hdfs://rbf-ns/abc/dir hdfs://ns2/abc/dir 嵌套挂载 用户 A 挂载 hdfs://rbf-ns/user/mydir hdfs://ns1/user/mydir 用户 B 挂载 hdfs://ns2/user/mydir hdfs://rbf-ns/user/mydir
10. 2.3 统一协议转发 - 转发瓶颈 nnbench 压测 Router/NN NameNode NameNode Router Router Router 转发队列拥塞 NN 毫无处理压力 FederationConnectionId map map map map map map map map
11. 2.3 统一协议转发 - 隔离慢 NS 通过 RpcProxyTime 统计目的 NS 的响应速度 把访问慢 NS 的请求重新入队 当响应速度恢复时,直接转发 到目的 NS
12. 03 跨机房数据融合 通过上层协议层解决不同服务的数据共享。底层物理层的数据共享需要解决 的是同服务间不同机房的数据共享和同步。 需要解决数据流向,数据管控,机房隔离等挑战
13. 3.1 跨机房存储架构 架构特点 基于跨机房存储整合主站大数据 数据节点,实现“全量存储+全网 拓扑=跨机房故障域”,实现大数 据关键数据异地容灾及跨机房存 储能力。 MetaServer 机房-2 MetaServer 机房-1 跨机房补块 工作挑战: NN-1 • 集群规模3W+ MetaServer 机房-3 跨机房补块 NN-2 NN-3 NN-1 Observer Observer Observer 跨机房 故障域 NN-2 跨机房补块 NN-3 NN-1 NN-2 Observer Observer Observer 跨机房 故障域 NN-3 跨机房 故障域 • 跨域心跳与块汇报 • 多standby架构 方案优势: • 强一致性:全局文件一致性 异步 • 复用原理:自主跨机房补块 • 易迁移 :数据异动成本低 • 高可用:支持跨机房切换 DN-1 DN-2 DN-3 DN-4 Block-1 Block-1 Block-1 Block-1 Block-2 Block-2 同步 Block-X DataServer 机房-1 Block-Y DN-5 Block-2 Block-Y Block-X DataServer 机房-2 DN-6 DN-7 DN-8 Block-1 Block-1 Block-1 Block-2 Block-2 Block-X DN-9 3:2:2 Block-2 Block-Z Block-Z DataServer 机房-3 2:2:2
14. 3.2 跨机房数据流 A 机房 B 机房 • 异步 ↑ • 同步 ↓ ping 时延 同机房 :0.1ms 同地区 :1.0ms 跨地区 :>10ms
15. 3.3 跨机房存储实现 - 核心点 元数据持久化 跨机房选块 - 拓扑管理 • 规则 A:3,B:2,C:2,TimeStamp • 从 XAttr 到 INode Proto • NN 重启 - 块属性标记 跨机房读写-数据同步 生产者 依赖 DistCp 依赖 • • • • • DN 注册 选块 补块 距离计算 指标统计 机房-1 rack-1 DN DN 机房-2 rack-2 DN DN DN rack-3 DN DN DN DN DN DN / 消费者 rack-1 跨机房自动同步 DN 一个机房一棵拓扑树 机房-1 HDFS rack-4 HDFS DN DN 机房-2 rack-2 DN DN DN rack-3 DN DN 一棵大拓扑树 DN rack-4 DN DN DN DN
16. 3.3 跨机房存储实现 - 核心点 块管理 • • • • • 跨机房类型块汇报 跨机房块冗余性检查 跨机房带宽管控 返回客户端指定机房的 DN 节点 balancer 机房内部均衡 DN DN DN 流控 机房-A DN 流控 DN DN 机房-B DN DN 机房-C DN 机房-B DN DN DN 流控 机房-A DN DN 跨机房补块策略 机房-C 跨机房属性变迁 / • 新增与删除属性 dir-1 A:3,B:2 • 目录迁移 dir dir-2 A:3,B:2,C:2 file dir file 待转换队列 跨机房目录迁移
17. 04 异构系统之高密存储 通过计算存储分离隔离相互影响,存储系统机型弱化计算能力,提高磁盘密 度,降低存储成本。 对 HDFS 系统带来的挑战:异构集群管理,存储效率优化
18. 4.1 高密存储性能优化 挑战 • CPU 性能偏低 • 磁盘容量翻倍,转速不变 • 从温冷数据应用场景转到线上 • 固态盘寿命管理 优化 效果 • 采用了NVMe SSD + OpenCAS 缓存加速 方案,以提升 IOPS 并降低时延 • 更高存储,更高性能,更低成本 • 解决开源版本重启数据异常问题 • 读写 IO 时延,高密度存储节点比普通节 点分别降低约 88% 和 66% • 调优缓存刷新方式,提升 SSD 磁盘寿命 • SSD 盘使用寿命推测可达5 年以上
19. 4.2 高密存储异构集群管理 机房 故障域 • 在机架划分的基础上增加高密节点判断,副本尽可能 均匀分布在高密节点与普通节点上 机架 • 集群存储 balancer 机架 DN 优化 • 启动初期扫盘线程管理 • 存储目录布局:datalayout.subdir.scale 普通盘 普通盘 DN DN 高密盘 高密盘 DN DN 异构集群数据节点网络拓扑
20.

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-15 15:40
浙ICP备14020137号-1 $Map of visitor$