微信号:dellemc_tech

介绍:为戴尔易安信客户提供技术支持服务,为广大IT行业用户分享技术文章与行业信息。

EMC存储上的大数据 – Hadoop软件概述

2017-06-17 16:16 EMC中国技术社区

     企业一直在处理快速增长的数据量(也称为大数据)的存储和管理问题。原有的存储经扩展后缀让能勉强跟上计算容量增长的步伐,但是用来分析该大数据以得出宝贵见解的工具却落入后了。Hadoop是一款经专门设计的创新性开源大数据分析引擎,旨在最大程度地缩短从企业的数据集到处宝贵见解的时间。本文为系列的第一篇,介绍了Hadoop软件的核心组件MapReduce和HDFS。

 

     Hadoop是一款经专门设计的创新性开源大数据分析引擎,旨在最大程度地缩短从企业的数据集到处宝贵见解的时间。他包括以下主要组件:


  • MapReduce

  • Hadoop分布式文件系统(HDFS)

  • HIVE

  • PIG

  • HBASE

  • ZOOKEEPER



     MapReduce:


     MapReduce是一种分布式任务处理框架,可在多个节点上并行运行作业,以更快地从大型数据集得出结果。Hadoop MapReduce是一个软件框架,可用于轻松编写大型商用计算节点集群上并行处理大量数据的应用程序。早期MapReduce被Google作为一种计算模式推出,而Hadoop被Yahoo作为这种模式的实施编写并献给开放源代码。


MapReduce框架包括下列组件:


  • JobTracker:每个节点集群配备单一主JobTracker,用于计划、监视和管理作业及其组件任务。

  • TaskTracker:每个集群节点配备一个从属TaskTracker,用于按照JobTracker的指令执行作业的任务组件。


     MapReduce作业(查询)由多个映射任务组成,这些任务跨集群分布,并且以完全并行的方式进行处理。框架对映射的输出进行排序,这些输出随后被用作缩减任务的输入。通常使用HDFS跨节点就能存储作业的输入和输出。框架负责计划任务、监视任务并管理失败任务的重新执行。在Hadoop集群中,MapReduce计算节点和HDFS存储层通常驻留在同一组节点上。该配置使框架能够有效地在已经存在数据的节点上计划任务,以便避免与在节点集群内移动数据相关的网络瓶颈。这正是计算层通过与HDFS层中的数据位置对齐来有效推导关键见解的方式。Hadoop完全用Java编写,但MapReduce应用程序不必如此。MapReduce应用程序可以利用Hadoop流接口来指定任何可执行文件作为特定作业的映射程序或缩减程序。



     Hadoop分布式文件系统(HDFS)


     HDFS是一种分布式文件系统,Hadoop集群借此来存储所有需要分析的输入数据以及由MapReduce作业生成的任何输出结果。HDFS是一种基于数据块的文件系统,它跨越集群中的多个节点,并且使用用户数据可以存储在文件中。它提供了传统的分层文件组织,以便用户或应用程序可以操作(创建、重命名、移动或删除)文件和目录。它还提供了一个流接口,借助于该接口,可使用MapReduce框架运行所选的任何应用程序。HDFS不支持设置硬链接或软链接,因此用户无法寻址到特定数据块或者覆盖文件。HDFS要求进行编程访问,因此用户无法作为文件系统装载。所有HDFS通讯都根据TCP/IP协议分层。


HDFS的关键组件有:


  • NameNode:单一主元数据服务器,其中包含每个文件、文件位置以及这些文件及其所在的DataNode内的所有数据块的内存映射。

  • DataNode:每个集群节点均有一个从属DataNode,它为读/写请求提供服务以及按照NameNode的指令执行数据块创建、删除和复制。


     HDFS是所有数据在MapReduce作业可依其运行之前所驻留的存储层。HDFS使用数据块镜像,让数据分布于受保护的Hadoop集群以及跨多个计算节点的数据位置之中。默认数据块大小是64MB,默认复制因子是3x。


     Hadoop构建在横向扩展的原则之上,它借助于在一个商业硬件集群上运行的智能软件,以一种快速、经济且高效的粉丝推导出宝贵见解。得益于这种分布式并行任务处理,因此,可以让Hadoop可在分析大数据领域大展身手。



     HIVE

 

     HIVE是Hadoop的一个数据仓库系统,允许轻松地执行数据摘要,即兴查询和分析Hadoop兼容文件系统中的存储的大型数据集。SQL风格的界面为用户提供基于行的存储功能。此功能能与压缩功能一起,提高了存储数据的压缩比率。

 


     PIG

 

     Pig是一种编程语言,借助Hadoop MapReduce平台处理大型半结构化数据集。它可以为开发人员提供一种代替Java的编程语言。从而让他们更轻松地编写MapReduce作业。



     HBASE

 

     HBASE是一个有版本控制,以列为想到的分布式存储平台,可为用户应用程序提供对大数据的随机实时读/写访问。



     ZOOKEEPER


     Zookeeper是一个高可用性的系统,用于协调分布式进程。分布式应用程序使用Zookeeper来存储和传递对关键配置信息的更新。




其它参考文章:

【存储入门必读】存储基础知识



更多精彩内容,请点击阅读原文”进行查看!

如何每天都能收到如此精彩的文章?

①点击右上角点击查看官方账号”→点击关注

②长按并识别下图中的二维码,直接访问EMC中文支持论坛


 
戴尔易安信技术支持 更多文章 浅谈RAID写惩罚(Write Penalty)与IOPS计算 ​ 存储基础(一) 存储基础(二) 为什么客户会选择部署 VMAX 全闪存? Raid-7小七的故事
猜您喜欢 360紧急发布周一应对“勒索病毒”开机指南 05 | Android 高级进阶(源码剖析篇) Twitter 的高性能序列 【8月29日·上海】来自华东运维圈的邀请函 【专家专栏】林相宇 | 使用AVFoundation和CoreImage实现IOS人脸识别 清华大学导师带你解读量化投资