• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
翟艳堂:腾讯大规模Hadoop集群实践
 

翟艳堂:腾讯大规模Hadoop集群实践

on

  • 463 views

BDTC 2013 Beijing China

BDTC 2013 Beijing China

Statistics

Views

Total Views
463
Views on SlideShare
463
Embed Views
0

Actions

Likes
0
Downloads
4
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    翟艳堂:腾讯大规模Hadoop集群实践 翟艳堂:腾讯大规模Hadoop集群实践 Presentation Transcript

    • 腾讯大规模 Hadoop集群实践 腾讯数据平台部 翟艳堂
    • 数据服务总体框架 数据开发者平台 SNG Lhotse统一调度 + 数据应用门户 自助提取与分析 专题分析 IEG MIG TDBank OMG 数据采 集与分 发 TDW 海量数据存储 与计算 精准推荐模型 社交广告 电商 视频 其它 CDG TRC 实时计算平台 ECC 数据规范化管理 实时采集 流式计算 TEG 数据仓库 数 据 分 析 数据应用 分布式存储 精 准 推 荐
    • 为什么要做大集群 • 数据共享 • 计算资源共享 • 减轻运营负担 福永微博集群 350台 枢纽点击流集群 500台 SOSO集群 南汇集群 财付通集群 …… 宝安主集群 IEG/MIG/… 450台TS4 宝安公用集群 500台 同乐主集群 SNG/OMG/ECC 1250台 TS4+TS5 宝安数挖集群 250台 宝安TA集群 宝安智胜集群 …… 同乐微博集群 200台 TDW
    • 面临的挑战 400台 1年 计算层 4000台 存储层  JobTracker调度效率低  NameNode没有容灾 集群扩展性不好 丢失1个小时数据的风险 重启耗时长 不支持灰度变更 高可用 高效 高扩展性 JobTracker分散化 NameNode高可用 高可用 高效 高扩展性
    • JobTracker分散化
    • 方案选择 TDW基线版本: CDH3u3 Yarn Corona 版本稳定性 社区开发中,稳定版发布时间未知 facebook发布的版本 代码复杂度 2.X系列代码,完全重构 基于0.20系列代码 HDFS的要求 2.X HDFS 0.20系统HDFS 时间:2012年12月
    • JobTracker分散化 Cluster Manager Job Tracker 资源管理 任务调度 任务管理 资源管理 任务调度 JobTracker 任务管理 … Task Task Tracker Tracker ... Task Task Task Tracker Tracker Tracker ...  JobTracker分散化平行扩展  资源管理和任务调度解耦  更精细地调度 任务管理
    • JobTracker分散化 1. request jobtracker resource Cluster Manager 2. grant jobtracker resource JobClient 4. request map/reduce resource 5. grant map/reduce resource heartbeat heartbeat JobTracker 3. start jobtracker 6. submit launch map/reduce actions Task Task Task Tracker Tracker Tracker map/ heartbeat reduce ...
    • NameNode高可用
    • NameNode高可用 zk1 zk2 … client meta ops client meta ops Name Node check Second point NameNode ANN BNN learn meta BNN sync edit log blockreport Data Node Data Node ... Data Node Data Node blockrepor t ...  一主两热备  元数据在主备间实时同步  DataNode同时向3个Master汇报Block
    • Namenode主备仲裁以及状态转换 zookeeper cluster ../repView/ A:ip1,S:ip2,S:ip3 zookeeper cluster ../repView/ A:ip2,S:ip3,n:ip1 ../election/1,2,3 X heatbeat client Active:IP1 Standby:IP2 ../repView/ A:ip2,S:ip3,n:ip1 newbie:IP1 Standby:IP3 client ../election/2,3 重新学习,收集DN状态 client 重新获取主 更新repview newbie:IP1 Standby:IP3 heatbeat Active:IP2 ../repView/ A:ip2,S:ip3,S:ip1 heatbeat Active:IP2 ../election/2,3 Standby:IP2 ../election/2,3 4 heatbeat client standby:IP1 Active:IP2 Standby:IP3
    • NameNode分散化
    • NameNode分散化 Hive Hive user Tbl_a, Tbl_b submit mr user 获取NN信息 Meta Tbl_a Tbl_b namenode 3 ... submit mr namenode 1 .... 计算层 计算层 Namenode DN DN Tbl_b Tbl_a ... HDFS Cluster1 (NameNode1) HDFS Cluster2 (NameNode2)  按业务分布  按负载分布资源 HDFS Cluster3 (NameNode3)
    • 优化运营
    • HDFS兼容 0.20.1 CDH3u3 2.0 routing table FileSystem DFSClient NameNode AbstractFil eSystem RPC Server NameNode FileSystem DFSClient RPC Server AbstractFil eSystem routing table DataNode DataNode HDFS HDFS
    • 检测节点短板 • 1个节点慢,整个job慢 监控数据库 CPU利用率最高的/最低的 reduce平均执行时间最大的 推测执行差异化服务 • 一视同仁 – 资源浪费 • 关键任务不能执行慢,非关键任务不能卡死 关键任务 非关键任务 推测比例 90% 1% 推测间隔 5s 30m
    • 防止数据误删除 • 误删除数据将会造成灾难 – NameNode回收站 – 删除黑白名单 – DataNode回收站 大Job的困扰 • 资源池限制 • 生产时段和非生产时段动态调整 • 下手狠一点
    • 业务迁移 MapReduce HDFS1 HDFS2 • • • • • DB为迁移切换单位 计算出空窗期 全量迁移DB 循环补充迁移更新的表 实施切换
    • 集群发展现状 单集群支撑规模 400 4400 集群容量 每日作业数 4万 100万+ –服务器 4400台 每日计算量 0.26PB 4PB –CPU ~10w+核 存储利用率 85%+ 83%+ CPU利用率 30% 85%+ –内存 ~275TB 数据安全性 可能会丢失1个小时 数据 丢数据风险很低 重启暂停线上服 1小时 务时间 秒级自动无缝切换 总存储量 4PB 80PB 文件数+块数 5千万 6亿 –磁盘 ~52800块 –存储容量 ~100PB
    • 未来计划 • 引入Yarn作为统一的资源管理平台 – 支持MapReduce、Storm、Spark、Tez等计算模型 • 实时计算平台 • 类Dremel系统 • 开源计划
    • 谢 谢