一、简介

  • 定义:开源的,做分布式存储与分布式计算的平台;
  • 功能:搭建大型数据仓库,对PB级数据进行存储、处理、分析、统计等业务;(如日志分析、数据挖掘)
  • Hadoop工作模块
  1. Common:提供框架和工具,对其它Hadoop模块的支持;
  2. Distributed File System(HDFS:分布式文件系统):负责数据的存储;
  3. YARN:作业的调度及资源管理;
  4. MapReduce:基于YARN的并行处理框架;

二、Hadoop 功能模块

 1)HDFS(分布式文件系统)

  • 特点

  1. 可扩展,可容错、可海量的存储数据;
  2. 将文件切分成指定大小的数据块(一般默认128M),并以多副本的存储在多个机器上;(达到容错目的)
  3. 数据切分、多副本、容错等操作对用户是透明的;
  • 实例简介

  1. 有 8 个节点(一般指单个服务器,一个独立的磁盘);
  2. part-0(Filename):文件名;
  3. r:2(numReplicas):表示 part-0 文件有 2 个副本;
  4. {1, 3}(block-ids):表示 part-0 文件被切分为 1 和 3 两部分;
  • 对多个 block 进行编号,保证读取文件的数据时,不同数据被读取的顺序不变;

 2)YARN(Yet Another Resource Negotiator)

  • 功能:负责整个集群资源的管理和调度;
  • 特点:可扩展(如:计算能力不足时可添加机器)、可容错、多框架资源统一调度(可以跑不同的框架,进而可以进行针对不同的业务);
  • 实例简介

  1. 可多个不同类型的框架同时进行;

 3)MapReduce

  • 功能:分布式计算框架;
  • 特点:可扩展、可容错、做海量数据离线处理(不能实时处理);
  • 实例简介

  • 计算过程:(例:world count process,统计文章中所有单词的出现次数)
  1. Input:输入操作文件;
  2. Splitting:将操作文件分割为 3 部分;(一般会分别放在 3 台机器上进行操作计算,可提高效率)
  3. Mapping:以 空格 为分隔符,将每部分文章拆分成单个词汇;

三、Hadoop 优势及其生态系统

 1)Hadoop 的优势

  • 高可靠性

  1. 存储方面:数据块多副本;(防止数据块丢失)
  2. 计算方面:如果出现错误,会重新调度作业进行计算;
  • 扩展性

  存储/计算资源不够时,可以添加横向的线性扩展机器;

  一个集群中可以包含数以千计的节点;

  • 其它

  1. 可以存储在廉价的机器上,降低成本;
  2. 具有成熟的生态圈;

 2)Hadoop 生态系统

  • 狭义的 Hadoop:一个适合大数据分布式存储(HDFS)、分布式计算(MapReduce)和资源调度(YARN)的平台;
  • 广义的 Hadoop:指Hadoop生态系统,Hadoop 生态系统是一个很庞大的概念,hadoop 是其中最重要最基础的一部分;生态系统中的每一个子系统只解决某一个特定的问题域(甚至可能很窄),不搞统一型的一个全能系统,而是小而精的多个小系统;
  1. Hive:通过 SQL 语句进行统计分析;(Hive 的执行引擎将 SQL 语句转换为Map Reduce,提交到集群上进行计算)
  2. R Connectors:R 语言,一般做统计分析;
  3. Pig:通过脚本方式进行统计分析;(将脚本转换为 Map Reduce,一般做离线处理)
  4. Ooize:配置具有依赖关系的数据,一步步有序的执行;(执行顺序排列好后,不能乱序执行)
  5. Zookeeper:管理多种框架,做分布式的协调服务;(如果某个执行框架出现问题,可做单点的切换,执行其他框架)
  6. Flume:日志收集框架;(分布式的,使用配置文件,收集多个服务器上的运行日志)
  7. Sqoop:数据传输交换工具,用于传统的关系型数据库与 Hadoop 之间进行数据传输,双向的;(可将传统数据库中的数据直接抽取到 HDFS、Hive 或者 Hbase 中)
  8. Hbase:实时查询数据;是针对结构化数据的一个可伸缩、可扩展、高性能、面向列的一个数据库,或者说是Hadoop 中的一个数据库;
  • 一般使用不同框架解决特定域的问题;

  • 生态系统特点:所有框架都是开源的,可根据源码做定制化开发,并且社区活跃;

大数据:Hadoop(简介)的更多相关文章

  1. 成都大数据Hadoop与Spark技术培训班

    成都大数据Hadoop与Spark技术培训班   中国信息化培训中心特推出了大数据技术架构及应用实战课程培训班,通过专业的大数据Hadoop与Spark技术架构体系与业界真实案例来全面提升大数据工程师 ...

  2. 王家林的“云计算分布式大数据Hadoop实战高手之路---从零开始”的第十一讲Hadoop图文训练课程:MapReduce的原理机制和流程图剖析

    这一讲我们主要剖析MapReduce的原理机制和流程. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发 ...

  3. 云计算分布式大数据Hadoop实战高手之路第七讲Hadoop图文训练课程:通过HDFS的心跳来测试replication具体的工作机制和流程

    这一讲主要深入使用HDFS命令行工具操作Hadoop分布式集群,主要是通过实验的配置hdfs-site.xml文件的心跳来测试replication具体的工作和流程. 通过HDFS的心跳来测试repl ...

  4. 云计算分布式大数据Hadoop实战高手之路第八讲Hadoop图文训练课程:Hadoop文件系统的操作实战

    本讲通过实验的方式讲解Hadoop文件系统的操作. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发布云 ...

  5. 14周事情总结-机器人-大数据hadoop

    14周随着考试的进行,其他该准备的事情也在并行的处理着,考试内容这里不赘述了 首先说下,关于机器人大赛的事情,受益颇多,机器人的制作需要机械和电控两方面 昨天参与舵机的测试,遇到的问题:舵机不动 排查 ...

  6. 大数据Hadoop学习之搭建hadoop平台(2.2)

    关于大数据,一看就懂,一懂就懵. 一.概述 本文介绍如何搭建hadoop分布式集群环境,前面文章已经介绍了如何搭建hadoop单机环境和伪分布式环境,如需要,请参看:大数据Hadoop学习之搭建had ...

  7. 大数据hadoop面试题2018年最新版(美团)

    还在用着以前的大数据Hadoop面试题去美团面试吗?互联网发展迅速的今天,如果不及时更新自己的技术库那如何才能在众多的竞争者中脱颖而出呢? 奉行着"吃喝玩乐全都有"和"美 ...

  8. 搭建大数据hadoop完全分布式环境遇到的坑

    搭建大数据hadoop完全分布式环境,遇到很多问题,这里记录一部分,以备以后查看. 1.在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  9. 我搭建大数据Hadoop完全分布式环境遇到的坑---hadoop: command not found

    搭建大数据hadoop环境,遇到很多问题,这里记录一部分,以备以后查看. [遇到问题].在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  10. [转帖]大数据hadoop与spark的区别

    大数据hadoop与spark的区别 https://www.cnblogs.com/adnb34g/p/9233906.html Posted on 2018-06-27 14:43 左手中倒影 阅 ...

随机推荐

  1. memcpy和strcpy的区别

    strcpy和memcpy主要有以下3方面的区别. 复制的内容不同.strcpy只能复制字符串,而memcpy可以复制任意内容,例如字符数组.整型.结构体.类等. 复制的方法不同.strcpy不需要指 ...

  2. Linux下进程间通信方式——共享内存

    1.什么是共享内存? 共享内存就是允许两个或多个进程共享一定的存储区.就如同 malloc() 函数向不同进程返回了指向同一个物理内存区域的指针.当一个进程改变了这块地址中的内容的时候,其它进程都会察 ...

  3. PATB1006换个格式输出整数

    参考代码: #include<cstdio> int main() { int n;//接收输入的数字 int a = 0, b = 0, c = 0;//分别记录百位十位个位上的数 sc ...

  4. 使用docker部署nginx+tomcat架构(3):使用docker-compose简化部署操作

    经历了之前的两篇,我们已经大体上了解了docker部署容器的过程. 使用docker部署nginx+tomcat架构 使用docker部署nginx+tomcat架构():访问mysql数据库 不过, ...

  5. quick: iskindof使用注意

    quick: iskindof使用注意 --[[-- 如果对象是指定类或其子类的实例,返回 true,否则返回 false ~~~ lua local Animal = class("Ani ...

  6. JVM 发生内存溢出的 8 种原因、及解决办法

    阅读本文大概需要 2.3 分钟. 出处:割肉机 cnblogs.com/williamjie/p/11164572.html Java 堆空间 GC 开销超过限制 请求的数组大小超过虚拟机限制 Per ...

  7. windows下SVN使用 Add指令、Undo Add指令

    前几天,使用SVN的Add指令添加了一个文件,后不使用直接删除了,每次提交都存在,解决后记录方法,希望帮到大家,此外如果大家有好的方法,希望可以回复. 问题:使用Add添加文件后直接删除了文件,每次提 ...

  8. sql的插入或者修改

    <select id="insertOrUpdateTenantDetail" parameterType="tenantDetailDO"> IN ...

  9. Python3第三方组件最新版本追踪实现

    一.说明 在安全基线中有一项要求就是注意软件版本是否是最新版本,检查是否是最新版本有两方面的工作一是查看当前使用的软件版本二是当前使用软件的最新版本.在之前的“安全基线自动化扫描.生成报告.加固的实现 ...

  10. eclipse配置lombok插件

    下载lombok-1.16.12.jar包 然后将包添加到eclipse.ini 同级目录下 打开eclipse目录:最后两行添加如下配置: -Xbootclasspath/a:lombok-1.16 ...