申请试用
HOT
登录
注册
 
账号已存在
京东hdfs存储解密
openLooKeng
/
发布于
/
94
人观看

10张华宗.png
张华宗-京东数据与算法通道hdfs团队 高级开发工程师

展开查看详情

1 .目录

2 .京东跨机房集群智能存储平台 京东零售-系统优化部 张华宗 zhanghuazong@jd.com 13720068867 2021-10-16

3 .目录 1. 跨域存储项目的背景 2. 跨域存储项目 3. 跨域存储项目实践

4 .JD数据产品/技术整体架构 运维系统 可视化分析 可视化大屏 用户运营 应用层 (BIEngine) (JDV) 标签应用 (CDP) 服务器管理 服务层 数据服务(Easy Data) 部署系统 实时开发平台 数据建模工具 标签开发工具 工具层 (Easy Model) (Easy Label) (Easy Real 埋点管理 Time) 运营系统 任务调度(Buffalo) 统一元 计算 离线计算引擎 实时计算引擎 多维分析引擎 数据服 服务编排 存储层 (Hive/MR/Presto/Spark) (Flink/SparkStreaming) (OLAP ) 离线调度 务 数据存储( HDFS、数据湖) 监控系统 采集层 数据集成(离线、实时) 数据源 MySQL/PG/ES/Hbase/MongoDB/Redis…… 日志系统 ……

5 .跨域存储项目背景 机房1 机房2 Namenode Namenode 同步任务 distcp Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode 多机房多集群之间跨域存储读写同步一般都是通过distcp完成

6 .跨域存储项目背景 问题一 问题二 冗余数据成本高 没有跨机房带宽管控 问题三 问题四 数据的一致性问题 新增机房数据迁移需要业务介入,成 本高时间长

7 . 跨域存储项目-架构 Router Router 接入层 Router Router read getTxId write getTxId Cache Cache read-2 JN 功能列表: JN JN JN JN JN read-1 lag • ms 级的跨机房元数据同步能力 • 支持多 standby 架构 只读 Standby Active 只读 只读 • 支持 standby read Standby Standby Standby • 一致性读实现读写分离 • 支持跨机房容灾:灾备可读,支持手动切主 Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode Datanode 块异步传输 机房1 机房2 采用单集群,多机房的架构

8 .跨域存储项目-架构 M etaServer 机房-1 M etaServer 机房-2 M etaServer 机房-3 跨机房补块 跨机房补块 跨机房补块 N N -2 N N -3 N N -1 N N -3 N N -1 N N -2 N N -1 N N -2 N N -3 O bserver O bserver O bserver O bserver O bserver O bserver 跨机房 跨机房 跨机房 故障域 故障域 故障域 DN -1 DN -2 DN -3 DN -4 DN -5 DN -6 DN -7 DN -8 DN -9 异步 Block-1 Block-1 Block-1 Block-1 Block-1 Block-1 Block-1 3: 2: 2 同步 Block-2 Block-2 Block-2 Block-2 Block-2 Block-2 2: 2: 2 Block-X Block-Y Block-Y Block-X Block-X Block-Z Block-Z DataServer 机房-1 DataServer 机房-2 DataServer 机房-3 跨域存储从6副本减至4副本预计,进一步压缩存储的使用量。

9 .跨域存储项目-权重 DN DN DN 随着每年机器的迭代更新,集群中存在各种批次的节点,性能不等。如何做到物尽其用?

10 .跨域存储项目-智能读写 Read Datanode Weight:50 Write policy policy Cluster realtime Datanode Weight:25 information Isolation policy Cluster diagnosis Datanode Weight:10 DataNode向Namenode汇报实时状态信息, NameNode根据集群数据进行读写等策略控制

11 .跨域存储项目-分层 Namenode 机房1 机房2 rack1 rack2 rack3 rack1 rack2 rack3 Datanode1 Datanode4 Datanode7 Datanode1 Datanode4 Datanode7 Label Group1 Datanode2 Datanode5 Datanode8 Datanode2 Datanode5 Datanode8 Label Group2 Datanode3 Datanode6 Datanode9 Datanode3 Datanode6 Datanode9 Label Group3 支持标签策略,将某个NameNode或者其下的某些目录的数据指定到一组DataNode

12 . 跨域存储项目-分层 Before After 自动整理 机器: SSD HDD 高密存储 机器: SSD HDD 高密存储 Hot Warm Cold 核心应用场景: - 存储加速:对热数据及核心数据提供加速手段 - 冷存归档:僵冷数据数据存储到高密存储机器上,优化单位存储成本 - 逻辑子集群:支持按业务/目录维度划分逻辑子集群,实现数据隔离

13 .跨域存储项目-实施 存储增长趋势 更低IO延时 Average IO latency 200 0 优化前 优化后 Read latency(ms) Write latency(ms) QPS 跨机房流量管理 系统在线上稳定运行1年左右。保持较低的延时高QPS,并且有效降低存储增长趋势,降低机房迁移成本,实现 数据的统一存储与数据共享。

14 .火热招聘中 岗位:存储研发工程师/专家 跨域存储项目交流群 岗位:计算引擎研发工程师/专家

15 .THANKS

0 点赞
3 收藏
12下载
确认
3秒后跳转登录页面
去登陆