随着毕业设计的进行,大学四年正式进入尾声。任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定。无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力,好好做。正是因为选题和hadoop有关,现在正式开始学习hadoop。将笔记整理于此,希望与志同道合的朋友共同交流。

 作者:itRed           邮箱:it_red@sina.com       个人博客链接:http://www.cnblogs.com/itred

好了,废话不多说。进入正题!开始hadoop的学习。

  part1的主要任务是了解Hadoop项目,理解Hadoop的相关术语,了解Hadoop的部署模式,为伪分布式模式准备集群的环境。

一.Hadoop项目简介:

  这就是Hadoop的logo。而Hadoop的形象代言人就是这只棕黄色的小象。实际是一小孩儿的填充玩具,如果有兴趣了解Hadoop的名字起源。可以百度。

这里对Hadoop的介绍仅仅起到一个抛砖引玉的作用,我相信没有任何文档的介绍能够比得上Hadoop的官方文档。贴出Hadoop官网:http://hadoop.apache.org/,因此阅读官方文档时最好的一种真正理解这门技术的方式。在此,我谈谈自己的理解。Hadoop是一个分布式系统基础架构,但是它可以让开发者在不需要了解分布式底层的基础上,开发分布式程序和应用。而且可以充分利用其集群的能力来进行高速运算和存储。一句话,就是它是适合大数据的分布式存储与计算平台。

Hadoop的核心设计就是HDFS(Hadoop分布式文件系统)和MapReduce。关于这些术语的介绍我会在后文给出解释。HDFS为海量的数据提供了存储,而MapReduce为海量数据提供了计算。

Hadoop项目主要包含的模块有:

  Hadoop Common:这个Common套件主要为支持其他的Hadoop模块;

  HDFS:一种分布式文件系统,支持高吞吐量的应用数据;

   Hadoop YARN:一种任务调度的框架和群资源管理;

  Hadoop MapReduce:YARN依靠的系统,主要用于处理大数据。

二.Hadoop 重要术语理解:

HDFS:Hadoop Distributed File System (Hadoop分布式文件系统)默认的最基本的存储单位是64M的数据块。而在HDFS中,如果一个文件小于一个数据块的大小,并不占用整个数据块存储空间。

MapReduce:就是一种编程模型,用于大规模数据集(大于1TB)的并行运算。"Map(映射)"和"Reduce(归约)",以及它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。

三.Hadoop的部署模式主要分为三种:

本地模式:此时Hadoop使用本地文件系统而非分布式文件系统,而且其也不会启动任何Hadoop守护进程,Map和Reduce任务都作为同一进程的不同部分来执行。因此,本地模式下的Hadoop仅运行于本机。此种模式仅用于开发或调试MapReduce应用程序但却避免了复杂的后续操作。

伪分布模式:hadoop将所有进程运行于同一台主机上,但此时Hadoop将使用分布式文件系统,而且各jobs也是由JobTracker服务管理的独立进程。同时,由于伪分布式的Hadoop集群只有一个节点,因此HDFS的块复制将限制为单个副本,其secondary-master和slave也都将运行于本地主机。此种模式除了并非真正意义的分布式之外,其程序执行逻辑完全类似于完全分布式,因此,常用于开发人员测试程序执行。

集群模式:hadoop守护进程运行在一个集群上。

四.为安装Hadoop准备环境(伪分布模式):实现伪分布模式下的hadoop集群环境搭建。

准备软件:

    在虚拟机中装一个linux系统;

    Jdk;(版本根据您的实际情况来选择)

在linxu中安装jdk时,需要给jdk权限命令:chmod o+x  jdk..(根据版本的实际情况来);

然后利用 ./jdk….(版本)   进行安装;

  安装后的路径在:  /usr/java

  然后将java加入环境变量:#vi  /etc/profile

JAVA_HOME=/usr/java/jdk….
PATH=$PATH:/usr/java/jdk../bin
CLASSPATH=.:/usr/java/jdk…/jre/lib/rt.jar
Export JAVA_HOME PATH CLASSPATH

  关闭linux防火墙:

命令:
#service iptables status //查看防火墙状态
#service iptables stop //关闭防火墙
#chkconfig iptables off //设置防火墙的自动启动为off,即禁止自启动

  修改ip:网络链接方式设置为host-only ,根据自己的实际宿主机ip地址进行更改

 命令:# vi  /etc/sysconfig/network-s/ifcfg-eth0  //利用vi修改

  修改hostname:

 命令:#vi /etc/sysconfig/network    //机器重启后有效

           HOSTNAME=Hadoop

  ssh自动登陆:注意并不是java三大框架!

命令操作如下:
#cd ~/.ssh
#ssh-keygen –t rsa //然后就一直按Enter键,按着默认的进行下去;
#cp id_rsa.pub authorized_keys
#ssh localhost //利用这个命令进行验证

完成后,输入ssh localhost完成验证。

今天只是重点了解一下Hadoop项目,具体安装将在《Hadoop入门学习笔记---part2》中进行。

作者:itRed
邮箱:it_red@sina.com
博客:http://www.cnblogs.com/itred
***版权声明:本文版权归作者和博客园共有,欢迎转载,但请在文章显眼位置标明文章出处。未经本人书面同意,将其作为他用,本人保留追究责任的所有权利。

Hadoop入门学习笔记---part1的更多相关文章

  1. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  2. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  3. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  4. Hadoop入门学习笔记(一)

    Week2 学习笔记 Hadoop核心组件 Hadoop HDFS(分布式文件存储系统):解决海量数据存储 Hadoop YARN(集群资源管理和任务调度框架):解决资源任务调度 Hadoop Map ...

  5. Hadoop入门学习笔记总结系列文章导航

    一.为何要学习Hadoop? 这是一个信息爆炸的时代.经过数十年的积累,很多企业都聚集了大量的数据.这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼数成金成为当务之急.但数据增长 ...

  6. Hadoop入门学习笔记之一

    http://hadoop.apache.org/docs/r1.2.1/api/index.html 适当的利用 null 在map中可以实现对文件的简单处理,如排序,和分集合输出等. 需要关心的内 ...

  7. Hadoop入门学习笔记(二)

    Yarn学习 YARN简介 YARN是一个通用资源管理系统和调度平台,可为上层应用提供统一的资源管理和调度 YARN功能说明 资源管理系统:集群的硬件资源,和程序运行相关,比如内存.CPU等. 调度平 ...

  8. Hadoop入门学习笔记-第一天 (HDFS:分布式存储系统简单集群)

    准备工作: 1.安装VMware Workstation Pro 2.新建三个虚拟机,安装centOS7.0 版本不限 配置工作: 1.准备三台服务器(nameNode10.dataNode20.da ...

  9. Hadoop入门学习笔记-第二天 (HDFS:NodeName高可用集群配置)

    说明:hdfs:nn单点故障,压力过大,内存受限,扩展受阻.hdfs ha :主备切换方式解决单点故障hdfs Federation联邦:解决鸭梨过大.支持水平扩展,每个nn分管一部分目录,所有nn共 ...

随机推荐

  1. Windows phone8.1教务在线客户端

    本人是个大二学生,由于学校的教务在线一直没出windows phone的教务在线,而且本身也对wp开发感兴趣,所以就尝试着开发一下 由于没有系统的学习,只能在摸索中前进,这背后的原理很简单,可不容易实 ...

  2. Android热修复技术选型(不在市场发布新版本的情况下,直接更新app)

    2015年以来,Android开发领域里对热修复技术的讨论和分享越来越多,同时也出现了一些不同的解决方案,如QQ空间补丁方案.阿里AndFix以及微信Tinker,它们在原理各有不同,适用场景各异,到 ...

  3. mongoDB研究笔记:分片集群部署

    前面几篇文章的分析复制集解决了数据库的备份与自动故障转移,但是围绕数据库的业务中当前还有两个方面的问题变得越来越重要.一是海量数据如何存储?二是如何高效的读写海量数据?尽管复制集也可以实现读写分析,如 ...

  4. windows下PHP与Apache的安装配置

    1.下载安装apache:官网 http://httpd.apache.org/download.cgi#apache24 下载httpd-2.2.25-win32-x86-no_ssl.msi并安装 ...

  5. Spring2:bean的使用

    前言 Spring最基础的功能就是一个bean工厂,所以本文讲解的是Spring生成bean的种种方法及细节,Spring配置文件的名字是bean.xml,定义几个类: 一个Person类: publ ...

  6. 《C#图解教程》读书笔记之五:委托和事件

    本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.委托初窥:一个拥有方法的对象 (1)本质:持有一个或多个方法的对象:委托和典型的对象不同,执行委托实际上是执 ...

  7. WIX 安装部署教程(六) 为你收集的七个知识点

    前段时间整理5篇WIX(Windows Installer XML)的安装教程,但还不够完善,这里继续整理了七个知识点分享给大家.WIX最新版本3.8,点击下载 WIX安装部署(一)同MSBuild自 ...

  8. angularjs组件之input mask

    今天将奉献一个在在几个angularjs项目中抽离的angular组件 input mask.在我们开发中经常会对用户的输入进行控制,比如日期,货币格式,或者纯数字格式之类的限制,这就是input m ...

  9. 记一个界面刷新相关的Bug

    今天遇到一个比较有意思的bug, 这里简单记录下. Bug的症状是通过拖拉边框把我们客户端主窗口拖小之后,再最大化,会发现窗口显示有问题, 看起来像是刷新问题, 有些地方显示的不对了. 这里要说明的是 ...

  10. [php入门] 3、WAMP中的集成MySQL相关基础操作

    前言:本文以小白视角了解WAMP集成开发环境中的MYSQL,涉及的面广而浅,算是导读性质. 1.启动运行熟悉WAMP中的MySQL 先有库.再有表.数据最终以记录的形式插入表中.其中对数据进行操作使用 ...