zoukankan      html  css  js  c++  java
  • Hadoop之入门

    随着大数据的来临,hadoop应用而生,

    hadoop是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节 的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。

    hadoop的历史

    始于2002年的apache项目Nutch
    2003年Google发表了关于GFS的论文
    2004年Nutch的开发者开发了NDFS
    2004年Google发表了关于MapReduce的论文
    2005年MapR被引入了NDFS
    2006年改名为Hadoop,NDFS的创始人加入Yahoo,Yahoo成立了一个专门的小组发展
    Hadoop

    hadoop解决的问题

    海量数据的存储 -- HDFS

    海量数据的分析 -- MapReduce

    Hadoop = The Hadoop projects

    Common, Avro, MapReduce, HDFS, Pig, Hive, Hbase, ZooKeeper, Sqoop, Oozie

    hadoop设计目

    very large files  大文件     单个文件大小可以到几百G , 文件总的大小到T以及P级别

    Streaming data access

    write-once, read-many-times

    一次写多次读取,无法对写入的文件进行修改,目
    前可以添加。
    Commodity hardware 普通的硬件。

    hadoop不适合场景

    Low-latency data access 低延迟

    Lots of small files 小文件

    Multiple writers, arbitrary file modifications 不支持多次写

    HDFS架构

    在Hadoop中,一个文件被划分成大小固定的多个文件块,分布的存储在集群中的节点中

    同一个文件块在不同的节点中有多个副本。

    一个集中的地方保存文件信息。

    /home/hdfs/a.txt.part1,3,(dn1,dn2,dn3)

    /home/hdfs/a.txt.part2,3,(dn2,dn3,dn6)

    /home/hdfs/a.txt.part3,3,(dn7,dn8,dn11)

    HDFS架构图

    Hadoop

    Block:一个文件分块,默认64M

    NameNode:保存整个文件系统的目录信息,文件信息以及文件相应的分块信息。

    DataNode:用于存储Blocks HDFS的HA策略:NameNode一旦宕机,整个文件系统将无法工作。如果NameNode中的数据丢失,整个文件系统也就丢失了。

    2.x开始,HDFS支持NameNodeactive-standy模式

    MapReduce原理

    问题:

    求出以下数组当中最大的数

     1,3,23,3,4,18,2,8,10,16,7,5

     int Max(int a[], n)

    {

      int m=0;

      for(int i=0; i<n; i++)

      if(m<a[i]) m=a[i];

      return m;

    }

    MapReduce是一种编程模型,用于大规模数据集的并行计算,用它来计算式非常快的。

    通过这种方式就可以很快的遍历。

  • 相关阅读:
    《观止》读后感
    读产品经理相关书籍有感
    windows phone 7基础点随手记
    Windows phone 7画图画字
    《CLR via C#》读书笔记
    《Beginning C# Objcets》学习笔记
    ASP.NET 使用alert弹出对话框后,CSS样式失效,字体变大的解决方法
    .NET COOKIE /SESSION/CACHE操作类
    【原创】VS2005 Web应用程序打包并安装数据库
    存储过程实现多条件查询
  • 原文地址:https://www.cnblogs.com/wujin/p/2868507.html
Copyright © 2011-2022 走看看