zoukankan      html  css  js  c++  java
  • 每天收获一点点------Hadoop概述

    一、Hadoop来历

      Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明了倒排索引算法,通过加入了Map-reduce的思想来计算Page Rank,通过不断的演变Google带给我们了GFS、Map-Reduce、Bigtable这三大的关键技术和思想。由于Google的这些技术没有开源代码。有个人就模仿Google实现了类似Google全文搜索功能的框架Lucene,它提供了全文检索引擎的架构,包括完整的查询引擎和搜索引擎。面临大数据的情况下,Lucene面对与Google同样的困难。就使得Lucene的作者模仿着Google解决的这些问题在lucene项目下做了一个子项目Nutch。几年以后Google公开了部分GFS和Mapreduce的思想细节,作者在此为基础上做出了Hadoop,Hadoop作为 Lucene的子项目Nutch的一部分正式引入了Apache基金。

      二、Hadoop解决了什么问题?

      随着时间的推移Hadoop一步步的进步解决了一下几个问题:

      1、海量数据的及时分析和处理。

      2、海量数据深入分析和挖掘。

      3、数据的长期保存。

      4、实现云计算。

      5、能在数千个节点上运行,处理数据量和排序时间不断的缩短。

      三、Hadoop基本架构。

      3.1 Hadoop框架的基本构成。

      HBase:NoSql数据库,Key-Value存储,NoSql的数据库链式存储,数据分析提高相应速度。最大化 利用内存。

      HDFS: Hadoop distribute file system 分布式文件系统,最大化利用磁盘

      MapReduce:编程模型主要用来做数据的分析,最大化利用CPU。

      Pig:用户与MapReduce的转换器。

      Hive :SQL语言到MapReduce的转换器。

      Zookeeper:服务器节点和进程之间的通讯。

      chukwa:数据集成通讯。

      3.2 Hadoop框架集群架构

      Namenode:HDFS的守护程序,记录文件是如何分割成数据块的。以及这些数据块被存储到哪些节点上。对内存和I/O进行集中管理。是个单点,发生故障将使集群崩溃。

      Secondary Namenode: 监控HDFS状态的辅助后台程序,在每一个集群都有一个,与NameNode进行通讯保存HDFS元数据快照,当NameNode故障可以作为备用NameNode使用。

      DateNode:每台从服务器都运行一个负责把HDFS数据块读写到本地文件系统。

      JobTracker:用于处理用户提交代码的后台程序,决定由哪些文件参与处理,然后切割task并分配节点。监控task,重启失败的task,每个集群只有唯一一个JobTracker位于Master节点。

      四、总结。

      Hadoop的出现解决了我们大数据分析和挖掘,还大大降低了成本,不用买什么很强大的服务器,只要是个PC机我们就可以把它挂到Hadoop节点上就可以让它为我们大数据的分析和挖掘做贡献。Hadoop还解决了我们关于大数据的存储问题,这样我们就不用担心大数据对磁盘I/0操作带来的瓶颈。

    欢迎各位来探讨交流:QQ:747861092

    QQ群:163354117    (群名称:CodeForFuture)

  • 相关阅读:
    String类可以被继承吗?我们来聊聊final关键字!
    微信小程序中使用阿里ICON图标
    兼容iphone x刘海的正确姿势
    解决ios下部分手机在input设置为readonly属性时,依然显示光标
    react jsx 中使用 switch case 示例
    react 中使用 JsBarcode 显示条形码
    解决IDEA输入法输入中文候选框不显示问题
    svn提交代码失败提示清理(清理失败并且报错信息乱码解决办法)
    css笔记
    修改Mysql数据库的字符集
  • 原文地址:https://www.cnblogs.com/yangxiao99/p/4593583.html
Copyright © 2011-2022 走看看