1 / 59

Hadoop 与数据立方 原理和实践

Hadoop 与数据立方 原理和实践. 演讲人:王磊 技术总监. Hadoop 发展史. 主要内容. HDFS 简介. 第一部分. 第二部分. MapReduce 简介与实践. 第三部分. 数据 立方简介与实践. 主要内容. HDFS 简介与实践. HDFS 简介. 第一部分. 1.1. HDFS 介绍. HDFS 系统架构. 1.2. HDFS 内部机制. 1.3. 1.4. HDFS 可靠性. 主要内容. HDFS 简介. 第一部分. 1.1. HDFS 简介. HDFS 介绍. HDFS 系统架构. 1.2.

gaurav
Download Presentation

Hadoop 与数据立方 原理和实践

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Hadoop与数据立方 原理和实践 演讲人:王磊 技术总监

  2. Hadoop发展史

  3. 主要内容 HDFS简介 第一部分 第二部分 MapReduce简介与实践 第三部分 数据立方简介与实践

  4. 主要内容 HDFS简介与实践 HDFS简介 第一部分 1.1 HDFS介绍 HDFS系统架构 1.2 HDFS内部机制 1.3 1.4 HDFS可靠性

  5. 主要内容 HDFS简介 第一部分 1.1 HDFS简介 HDFS介绍 HDFS系统架构 1.2 HDFS内部机制 1.3 1.4 HDFS可靠性

  6. 什么是HDFS? • Hadoop Distributed File System • 用于存储海量文件 • 支持线性扩展 • 支持高可靠性

  7. HDFS适合做什么? • 存储并管理PB级数据 • 注重数据处理的吞吐量 • 一致性模型为:write-once-read-many存取模式

  8. HDFS不适合做什么? • 存储小文件 (不建议使用) • 大量的随机读 (不建议使用) • 需要对文件的修改 (不支持)

  9. 主要内容 HDFS简介 第一部分 1.1 HDFS介绍 系统架构 1.2 HDFS系统架构 HDFS内部机制 1.3 1.4 HDFS可靠性

  10. 设计目标 • 假设: • 节点失效是常态 • 理想: • 1. 任何一个节点失效,不影响HDFS服务 • 2. HDFS可以自动完成副本的复制

  11. 系统架构

  12. 主要内容 HDFS简介 第一部分 1.1 HDFS介绍 系统架构 1.2 HDFS内部机制 HDFS内部机制 1.3 1.4 HDFS可靠性

  13. Example:HDFS如何写文件? Create file Close file Write packet Send ack Write packet Send ack Write packet Send ack

  14. HDFS副本放置策略

  15. Example:HDFS如何读文件? Open file Get block location Close file Read block

  16. 主要内容 HDFS简介 第一部分 1.1 HDFS介绍 系统架构 1.2 HDFS内部机制 1.3 1.4 HDFS可靠性 HDFS可靠性

  17. NameNode可靠性问题 • 持久化元数据 • 操作日志(edit log) • 记录文件创建,删除,修改文件属性等操作 • Fsimage • 包含完整的命名空间 • File -> Block的映射关系 • 文件的属性(ACL, quota, 修改时间等)

  18. NameNode热备方案

  19. 主要内容 MapReduce简介与实践 第二部分 2.1 MapReduce简介 实例1:wordcount 2.2 实例2:两表关联 2.3

  20. 主要内容 MapReduce简介与实践 第二部分 2.1 MapReduce简介 MapReduce简介 实例:wordcount 2.2

  21. 传统并行计算模型MPI与MapReduce的比较

  22. 数据具有什么样特征的计算任务是MapReduce可以处理的? 一个计算任务所处理的数据若可以分为具有同样计算过程的数据块,并且这些数据块之间不存在数据依赖关系,则可以用MapReduce去处理。 大数据计算任务 任务划分 子任务 子任务 子任务 子任务 …… 结果合并 计算结果

  23. 海量数据存储 初始kv 键值对 初始kv 键值对 初始kv 键值对 初始kv 键值对 数据划分 …… Map Map Map Map (k1,val) (k2,val) (k3,val) (k1,val) (k2,val) (k3,val) (k1,val) (k3,val) (k2,val) (k3,val) 中 间 结 果 Barrier:Aggregation and Shuffle (k2,values) (k3,values) (k1,values) Reduce Reduce Reduce (K1,val) (K2,val) (K3,val) 计算结果

  24. 主要内容 MapReduce简介与实践 第二部分 2.1 MapReduce简介 实例2:两表关联 实例:wordcount 2.3

  25. 实例:wordcount • 输入:one document per record • 用户实现mapfunction,输入为 • key = document URL • value = document contents • map输出 (potentially many) key/value pairs. • 对document中每一个出现的词,输出一个记录<word, “1”>

  26. 实例:wordcount • MapReduce运行系统(库)把所有相同key的记录收集到一起 (shuffle/sort) • 用户实现reducefunction对一个key对应的values计算 • 求和sum • Reduce输出<key, sum>

  27. 主要内容 数据立方简介与实践 第三部分 3.1 数据立方简介 数据立方体系架构 3.2 实例:互联网数据处理案例 3.3 数据立方性能测试 3.4

  28. 主要内容 数据立方简介与实践 第三部分 3.1 数据立方简介 数据立方简介 数据立方体系架构 3.2 实例:互联网数据处理案例 3.3 数据立方性能测试 3.4

  29. DataCube(数据立方) 数据立方是南京云创存储科技有限公司完全自主研发的国产大数据云处理平台,具有从PB级的数据中挖掘出有价值信息并进行快捷、高效处理的能力。

  30. 数据立方的创新与优势 高效的分布式索引 高速分发的并行计算框架 支持60%的SQL语句 大数据的高速入库 用户接口友好 集群规模线性扩展 高可靠,无单点故障

  31. 2012年11月初,云创存储携手Intel推出了数据立方云计算一体机2012年11月初,云创存储携手Intel推出了数据立方云计算一体机

  32. 主要内容 数据立方简介与实践 第三部分 3.1 数据立方简介 数据立方体系架构 数据立方体系架构 3.2 实例:互联网数据处理案例 3.3 数据立方性能测试 3.4

  33. 数据立方体系架构

  34. DataCube(数据立方)的索引机制

  35. 分布式并行计算架构

  36. 并行计算架构上作业执行过程 查询索引文件 HDFS文件路径+偏移量 读取本地文件获取最终结果

  37. 相对于MapReduce架构,数据立方具有实时性、计算本地化以及负载均衡等优势。相对于MapReduce架构,数据立方具有实时性、计算本地化以及负载均衡等优势。 • MapReduce架构的job提交过程较为复杂: • 1, 客户端将作业提交到JobTracker有较长的延迟。 • 2,JobTracker将作业处理为MapReduce任务后,通过心跳信息将任务返回给TaskTracker,此过程中也存在延迟。 • 相对于MapReduce架构,数据立方的作业提交是实时性的,在提交作业之前所需程序已经分发到所有计算节点。

  38. MapReduce架构虽然也遵循数据本地性,但仍会有很大比例的数据处理不是本地的。MapReduce架构虽然也遵循数据本地性,但仍会有很大比例的数据处理不是本地的。 • 在作业提交后,数据立方的master根据数据文件所在位置分配任务,这样在每个计算节点上要处理的HDFS上的数据块就在本地,这样避免了数据的移动,极大地减少了网络IO负载,缩短了计算时间。

  39. 节点的动态扩展 • 数据立方具有良好的扩展性

  40. 子节点的容错 • 节点宕机任务重新分配

  41. 主要内容 数据立方简介与实践 第三部分 3.1 数据立方简介 数据立方体系架构 3.2 实例:查询与汇总 实例:互联网数据处理案例 3.3 数据立方性能测试 3.4

  42. 互联网数据处理案例

  43. 案例背景 • 1.数据体量大 每天产生300GB的数据。 • 2.实时入库 每过一个小时客户端向服务器端提交数据,要求能够实时入库。 • 3.处理速度快 每天零时,启动定时任务对数据进行汇总,在半小时内完成并生成有价值的数据,然后将汇总结果导入关系型数据库。

  44. 测试环境 软件配置 硬件配置

  45. 网络拓扑图

  46. 数据立方测试结果(未优化) 1、240GB级数据8客户端并行入库 2、 240GB级数据汇总

  47. 数据立方测试结果(优化后) 1、240GB级数据8客户端并行入库 2、 240GB级数据汇总

  48. 实时汇总系统信息图

  49. 主要内容 数据立方简介与实践 第三部分 3.1 数据立方简介 数据立方体系架构 3.2 实例:互联网数据处理案例 3.3 数据立方性能测试 3.4

More Related