Hadoop简介+配置

 一、Hadoop简介

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

Hadoop的优点

Hadoop是一个能够对大量数据进行分布式处理的软件框架。 Hadoop 以一种可靠、高效、可伸缩的方式进行数据处理。
Hadoop 是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。
Hadoop 是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。
Hadoop 还是可伸缩的,能够处理 PB 级数据。
此外,Hadoop 依赖于社区服务,因此它的成本比较低,任何人都可以使用。
Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。它主要有以下几个优点:
Hadoop带有用Java语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。
hadoop大数据处理的意义
Hadoop得以在大数据处理应用中广泛应用得益于其自身在数据提取、变形和加载(ETL)方面上的天然优势。Hadoop的分布式架构,将大数据处理引擎尽可能的靠近存储,对例如像ETL这样的批处理操作相对合适,因为类似这样操作的批处理结果可以直接走向存储。Hadoop的MapReduce功能实现了将单个任务打碎,并将碎片任务(Map)发送到多个节点上,之后再以单个数据集的形式加载(Reduce)到数据仓库里。

发展现状

Hadoop 设计之初的目标就定位于高可靠性、高可拓展性、高容错性和高效性,正是这些设计上与生俱来的优点,才使得Hadoop 一出现就受到众多大公司的青睐,同时也引起了研究界的普遍关注。到目前为止,Hadoop 技术在互联网领域已经得到了广泛的运用,例如,Yahoo 使用4 000 个节点的Hadoop集群来支持广告系统和Web 搜索的研究;Facebook 使用1 000 个节点的集群运行Hadoop,存储日志数据,支持其上的数据分析和机器学习;百度用Hadoop处理每周200TB 的数据,从而进行搜索日志分析和网页数据挖掘工作;中国移动研究院基于Hadoop 开发了"大云"(Big Cloud)系统,不但用于相关数据分析,还对外提供服务;淘宝的Hadoop 系统用于存储并处理电子商务交易的相关数据。国内的高校和科研院所基于Hadoop 在数据存储、资源管理、作业调度、性能优化、系统高可用性和安全性方面进行研究,相关研究成果多以开源形式贡献给Hadoop 社区。

二、试验环境

主机OSIP地址主要文件
mastercentos-6.x192.168.10.1

jdk

hadoop

slave1centos-6.x192.168.10.2
slave2centos6.x192.168.10.3

1)在主机上配置ip、域名解析、主机名。

2)安装jdk和hadoop

tar zxf jdk...gz
mv jdk... /usr/local/java
tar zxf hadoop....gz
mv hadoop.../ /usr/local/hadoop
useradd hadoop
chown -R hadoop:hadoop /usr/local/hadoop
vim /etc/profile
   export JAVA_HOME=/usr/local/java
   export HADOOP_HOME=/usr/local/hadoop
   export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile  #重载

注:在slave1-2主机上坐同样步骤

3)master配置SSH密钥对

su - hadoop
ssh-keygen
ssh-copy-id -i .ssh/id_rsa.pub  hadoop@slave1
ssh-copy-id -i .ssh/id_rsa.pub  hadoop@slave2

4)配置Hadoop

cd /usr/local/hadoop/etc/hadoop
vim hadoop-env.sh  //添加java环境变量
      export JAVA_HOME=/usr/local/java

vim core-site.xml  //添加master主机名
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://master:9000</value>
            </property>
        <property>
            <name>hadoop.tmp.dir</name>
            <value>file:/usr/local/hadoop/tmp</value>
            <description>hadoop 临时缓存目录 </description>
        </property>


mv mapred-site.xml.tempalte mapred-site.xml  
vim mapred-site.xml  //设置映射磁盘
   #连接jobtrack服务器的配置项,默认local、map数为1,reduce数为1。master是本机名
          <property>
            <name>mapred.job.tracker</name>
            <value>master:9001</value>
            </property>
    #本地计算机所使用的文件夹,可以配置多块硬盘用逗号分开
        <property>
            <name>mapred.local.dir</name>
            <value>/usr/local/hadoop/var</value>
        </property>  


vim hdfs-site.xml  //设置文件存储复制份数
        <property>
            <name>dfs.namenode.name.dir</name>
            <value>file:/usr/local/hadoop/name</value>
            </property>
        <property>
            <name>dfs.datanode.name.dir</name>
            <value>file:/usr/local/hadoop/name</value>
        </property>
        <property>
            <name>dfs.replication</name>
            <value>3</value>
            </property>
        <property>
            <name>dfs.webhdfs.enabled</name>
            <value>true</value>
        </property>

vim masters  //指定namenode的主机名
    master

vim slaves  //指定datanode的主机名
    slave1
    slave2

注:slave1-2上hadoop的配置和master配置一样

5)使用HDFS初始化master

hdfs namenode -format  #格式化HDFS
start-all.sh           #启动Hadoop

6)验证访问

通过浏览器查看NameNode,即master,访问http://192.168.10.1:50070,可以查看视图统计信息和HDFS存储信息等。如下图所示

7)hadoop基本命令

使用“hadoop  fs”命令可以结合普通的文件管理命令实现很多操作,如查看、修改权限、统计、获取帮助、创建、删除、上传下载文件等,更多的用法可使用“hadoop fs -help”或“hadoop fs -usage”命令查看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值