精华内容
参与话题
问答
  • Hadoop零基础教程,该课程主要为大家详细讲解YARN和MapReduce的构造,以及YARN和MapReduce的入门使用。通过本节课程带您一步步熟悉和掌握Hadoop基础。
  • hadoop学习

    千次阅读 2013-08-17 00:23:30
    Hadoop 是Google MapReduce的 一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同java程序员可以 不考虑内存泄露一样, MapReduce的run-...
    Hadoop 是Google MapReduce的 一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同java程序员可以 不考虑内存泄露一样, MapReduce的run-time系统会解决输入数据的分布细节,跨越机器集群的程序执行调度,处理机器的失效,并且管理机器 之间的通讯请求。这样的模式允许程序员可以不需要有什么并发处理或者分布式系统的经验,就可以处理超大的分布式系统得资源!
    Hadoop框架中最核心的设计就是:MapReduce和HDFS。MapReduce的思想是由Google的一篇论文所提及而被广为流传的,简单的 一句话解释MapReduce就是“任务的分解与结果的汇总”。HDFS是Hadoop分布式文件系统(Hadoop Distributed File System)的缩写,为分布式计算存储提供了底层支持。
    MapReduce工作原理图:
     afc34845d688d43f36f456b57d1ed21b0ff43b5d.jpg.gif   

    Hadoop的核心功能有两个:HDFS与MapReduce 。与HDFS相关的服务有NameNode 、SecondaryNameNode 及DataNode ;与MapReduce 相关的服务有JobTracker 和TaskTracker 两种。

    Hadoop集群中有两种角色:master与slave,master又分为主master与次master。其中:

    • 主 master同时提供NameNode 、SecondaryNameNode 及JobTracker 三种服务;
    • 次master只提供SecondaryNameNode 服务;
    • 所有slave可以提供DateNode 或TaskTracker 两种服务。


    Hadoop有三种集群方式可以选择:

    • Local (Standalone) Mode(无集群模式)
    • Pseudo-Distributed Mode(单机集群模式)
    • Fully-Distributed Mode(多机集群模式)

    启动Hadoop的方式是在主master上调用下面的命令:

    $HADOOP_HOME /bin/start-all.sh


    此调用过程中,Hadoop依次启动以下服务:

    • 在主master上启动NameNode 服 务;
    • 在主master上启动SecondaryNameNode 服 务;
    • 在次master上启动SecondaryNameNode 服 务;
    • 在所有slave上启动DataNode 服务;
    • 在主master上 启动JobTracker 服务;
    • 在所有slave上的TaskTracker 服务。

    图中展现了整个HDFS三个重要角色:NameNode、DataNode和Client。NameNode可以看作是分布式文件系统中的管理者, 主要负责管理文件系统的命名空间、集群配置信息和存储块的复制等。NameNode会将文件系统的Meta-data存储在内存中,这些信息主要包括了文 件信息、每一个文件对应的文件块的信息和每一个文件块在DataNode的信息等。DataNode是文件存储的基本单元,它将Block存储在本地文件 系统中,保存了Block的Meta-data,同时周期性地将所有存在的Block信息发送给NameNode。Client就是需要获取分布式文件系 统文件的应用程序。这里通过三个操作来说明他们之间的交互关系。

    文件写入:

    1. Client向NameNode发起文件写入的请求。
    2. NameNode根据文件大小和文件块配置情况,返回给Client它所管理部分DataNode的信息。
    3. Client将文件划分为多个Block,根据DataNode的地址信息,按顺序写入到每一个DataNode块中。

    文件读取:

    1. Client向NameNode发起文件读取的请求。
    2. NameNode返回文件存储的DataNode的信息。
    3. Client读取文件信息。

    文件Block复制:

    1. NameNode发现部分文件的Block不符合最小复制数或者部分DataNode失效。
    2. 通知DataNode相互复制Block。
    3. DataNode开始直接相互复制。

     840aa1cb0a46f21f98b59914f6246b600d33ae31.jpg.gif  

    在Hadoop的系统中,会有一台Master,主要负责NameNode的工作以及JobTracker的工作。JobTracker的主要职责 就是启动、跟踪和调度各个Slave的任务执行。还会有多台Slave,每一台Slave通常具有DataNode的功能并负责TaskTracker的 工作。TaskTracker根据应用要求来结合本地数据执行Map任务以及Reduce任务。

    说到这里,就要提到分布式计算最重要的一个设计点:Moving Computation is Cheaper than Moving Data。就是在分布式处理中,移动数据的代价总是高于转移计算的代价。简单来说就是分而治之的工作,需要将数据也分而存储,本地任务处理本地数据然后归 总,这样才会保证分布式计算的高效性。

    1. chmod a+x jdk-6u21-linux-i586.bin
    2. ./jdk-6u21-linux-i586.bin
    3. mv jdk1.6.0_21 /usr/local
    4. ln -s jdk1.6.0_21 jdk #方便将来jdk升级!
    然后配置java环境变量
    在/etc/profile文件的末尾加入:
    export JAVA_HOME=/usr/local/jdk
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jart
    然后执行source /etc/profile使得当前的设置生效!
    2: 安装hadoop,我下载的版本为 hadoop-1.0.1-bin.tar.gz ,执行tar zxvf hadoop-1.0.1-bin.tar.gz   接着mv   hadoop-1.0.1  /usr/local/hadoop
    下面是hadoop的相关设置:
    cd /usr/local/hadoop/conf
    vi hadoop-env.sh
    在该文件中加入 export JAVA_HOME=/usr/local/jdk
    vi masters   该文件内容为:
    1. [root@qht02 conf]# cat masters
    2. 192.168.1.2
    vi slaves   该文件内容如下:
    1. [root@qht02 conf]# cat slaves
    2. 192.168.1.3
    3. 192.168.1.4
    4. 192.168.1.5
    5. 192.168.1.6
    vi core-site.xml  该文件内容如下:
    1. [root@qht02 conf]# cat core-site.xml
    2. <?xml version="1.0"?>
    3. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    4. <!-- Put site-specific property overrides in this file. -->
    5. <configuration>
    6. <property>
    7. <name>fs.default.name</name>
    8. <value>hdfs://192.168.1.2:9000</value>
    9. </property>
    10. </configuration>

    vi hdfs.xml  该文件内容如下:
    1. <?xml version="1.0"?>
    2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    3. <!-- Put site-specific property overrides in this file. -->
    4. <configuration>
    5. <property>
    6. <name>dfs.replication</name>
    7. <value>2</value>
    8. </property>
    9. </configuration>
    vi mapred-site.xml  该文件内容如下:
    1. [root@qht02 conf]# cat mapred-site.xml
    2. <?xml version="1.0"?>
    3. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    4. <!-- Put site-specific property overrides in this file. -->
    5. <configuration>
    6. <property>
    7. <name>mapred.job.tracker</name>
    8. <value>192.168.1.2:9001</value>
    9. </property>
    10. </configuration>
    3: 值得注意的是Hadoop集群的所有机器的配置应该保持一致,一般我们在配置完master后,使用scp将配置文件同步到集群的其它服务器上!我是直接cp的整个hadoop包
    1. scp -r /usr/local/hadoop root@192.168.1.3:/usr/local
    2. scp -r /usr/local/hadoop root@192.168.1.5:/usr/local
    3. scp -r /usr/local/hadoop root@192.168.1.5:/usr/local
    4. scp -r /usr/local/hadoop root@192.168.1.6:/usr/local
    jd分别在其他的4台slave上安装也可以,或直接scp master上已经安装好的jdk也可以
    1. scp -r /usr/local/jdk1.6.0_21/ root@192.168.1.3:/usr/local/
    2. scp -r /usr/local/jdk1.6.0_21/ root@192.168.1.4:/usr/local/
    3. scp -r /usr/local/jdk1.6.0_21/ root@192.168.1.5:/usr/local/
    4. scp -r /usr/local/jdk1.6.0_21/ root@192.168.1.6:/usr/local/
    同样在4台机器上,分别做软连接!
    1. cd /usr/local/
    2. ln -s jdk1.6.0_21 jdk
    到处hadoop集群已经搭建完成!
    下面需要启动hadoop,这个时候需要配置无密码的ssh认证!


    1. ssh-keygen -t dsa -P '' -f 、/root/.ssh/id_dsa
    2. cd /root/.ssh/
    3. mv id_dsa.pub authorized_keys
    4. scp authorized_keys root@192.168.1.3:/root/.ssh
    5. scp authorized_keys root@192.168.1.4:/root/.ssh
    6. scp authorized_keys root@192.168.1.5:/root/.ssh
    7. scp authorized_keys root@192.168.1.6:/root/.ssh
    8. 注意如果/root下没有.ssh目录,则ssh 192.168.1.2 就会自动建立.ssh目录,然后支持scp即可
    9. 然后分别测试:
    10. ssh root@192.168.1.3
    11. ssh root@192.168.1.4
    12. ssh root@192.168.1.5
    13. ssh root@192.168.1.6
    14. 如果不提示输入密码即可登陆,表示已经搭建成功!
    4:启动hadoop前,必须先格式化一个分区,
    1. [root@qht02 hadoop]# bin/hadoop namenode -format
    2. 12/04/15 19:06:49 INFO namenode.NameNode: STARTUP_MSG:
    3. /************************************************************
    4. STARTUP_MSG: Starting NameNode
    5. STARTUP_MSG: host = qht02/127.0.0.1
    6. STARTUP_MSG: args = [-format]
    7. STARTUP_MSG: version = 1.0.1
    8. STARTUP_MSG: build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.0 -r 1243785; compiled by 'hortonfo' on Tue Feb 14 08:15:38 UTC 2012
    9. ************************************************************/
    10. 12/04/15 19:06:50 INFO util.GSet: VM type = 32-bit
    11. 12/04/15 19:06:50 INFO util.GSet: 2% max memory = 19.33375 MB
    12. 12/04/15 19:06:50 INFO util.GSet: capacity = 2^22 = 4194304 entries
    13. 12/04/15 19:06:50 INFO util.GSet: recommended=4194304, actual=4194304
    14. 12/04/15 19:06:52 INFO namenode.FSNamesystem: fsOwner=root
    15. 12/04/15 19:06:52 INFO namenode.FSNamesystem: supergroup=supergroup
    16. 12/04/15 19:06:52 INFO namenode.FSNamesystem: isPermissionEnabled=true
    17. 12/04/15 19:06:52 INFO namenode.FSNamesystem: dfs.block.invalidate.limit=100
    18. 12/04/15 19:06:52 INFO namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s)
    19. 12/04/15 19:06:52 INFO namenode.NameNode: Caching file names occuring more than 10 times
    20. 12/04/15 19:06:53 INFO common.Storage: Image file of size 110 saved in 0 seconds.
    21. 12/04/15 19:06:54 INFO common.Storage: Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted.
    22. 12/04/15 19:06:54 INFO namenode.NameNode: SHUTDOWN_MSG:
    23. /************************************************************
    24. SHUTDOWN_MSG: Shutting down NameNode at qht02/127.0.0.1
    25. ************************************************************/
    26. 此时会在/tmp目录下生成相应的目录:
    27. [root@qht03 name]# pwd
    28. /tmp/hadoop-root/dfs/name
    29. [root@qht03 name]# ls
    30. current  image
    31. [root@qht03 name]# 

    5:启动hadoop,
    1. [root@qht02 conf]# cd /usr/local/hadoop/
    2. [root@qht02 hadoop]# bin/start-all.sh 
    3. starting namenode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-namenode-qht02.out
    4. 192.168.1.4: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht04.out
    5. 192.168.1.3: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht03.out
    6. 192.168.1.6: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht06.out
    7. 192.168.1.5: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht05.out
    8. 192.168.1.2: starting secondarynamenode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-secondarynamenode-qht02.out
    9. starting jobtracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-jobtracker-qht02.out
    10. 192.168.1.4: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht04.out
    11. 192.168.1.3: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht03.out
    12. 192.168.1.6: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht06.out
    13. 192.168.1.5: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht05.out
    14. [root@qht02 hadoop]# 

    5:测试hadoop集群是否已经正常:
    在master上执行jps如下
    1. [root@qht02 conf]# jps
    2. 3478 NameNode
    3. 3729 JobTracker
    4. 4143 Jps
    5. 3634 SecondaryNameNode

    在slave上执行jps如下:
    1. [root@qht03 local]# jps
    2. 3496 TaskTracker
    3. 3414 DataNode
    4. 3633 Jps

    运行测试:

    点击(此处)折叠或打开

    1. [root@qht02 bin]# ./hadoop dfsadmin -report
    2. Configured Capacity: 49972363264 (46.54 GB)
    3. Present Capacity: 32953151518 (30.69 GB)
    4. DFS Remaining: 32953036800 (30.69 GB)
    5. DFS Used: 114718 (112.03 KB)
    6. DFS Used%: 0%
    7. Under replicated blocks: 0
    8. Blocks with corrupt replicas: 0
    9. Missing blocks: 0
    10. -------------------------------------------------
    11. Datanodes available: 4 (4 total, 0 dead)
    12. Name: 192.168.1.5:50010
    13. Decommission Status : Normal
    14. Configured Capacity: 12493090816 (11.64 GB)
    15. DFS Used: 28672 (28 KB)
    16. Non DFS Used: 4159823872 (3.87 GB)
    17. DFS Remaining: 8333238272(7.76 GB)
    18. DFS Used%: 0%
    19. DFS Remaining%: 66.7%
    20. Last contact: Sun Apr 15 19:20:47 CST 2012
    21. Name: 192.168.1.6:50010
    22. Decommission Status : Normal
    23. Configured Capacity: 12493090816 (11.64 GB)
    24. DFS Used: 28672 (28 KB)
    25. Non DFS Used: 4565094400 (4.25 GB)
    26. DFS Remaining: 7927967744(7.38 GB)
    27. DFS Used%: 0%
    28. DFS Remaining%: 63.46%
    29. Last contact: Sun Apr 15 19:20:48 CST 2012
    30. Name: 192.168.1.4:50010
    31. Decommission Status : Normal
    32. Configured Capacity: 12493090816 (11.64 GB)
    33. DFS Used: 28687 (28.01 KB)
    34. Non DFS Used: 4146950129 (3.86 GB)
    35. DFS Remaining: 8346112000(7.77 GB)
    36. DFS Used%: 0%
    37. DFS Remaining%: 66.81%
    38. Last contact: Sun Apr 15 19:20:46 CST 2012
    39. Name: 192.168.1.3:50010
    40. Decommission Status : Normal
    41. Configured Capacity: 12493090816 (11.64 GB)
    42. DFS Used: 28687 (28.01 KB)
    43. Non DFS Used: 4147343345 (3.86 GB)
    44. DFS Remaining: 8345718784(7.77 GB)
    45. DFS Used%: 0%
    46. DFS Remaining%: 66.8%
    47. Last contact: Sun Apr 15 19:20:46 CST 2012


    看下日志文件,仔细分析下hadoop的期待过程:

    点击(此处)折叠或打开

    1. [root@qht02 hadoop]# bin/start-all.sh
    2. starting namenode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-namenode-qht02.out
    3. 192.168.1.3: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht03.out
    4. 192.168.1.4: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht04.out
    5. 192.168.1.5: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht05.out
    6. 192.168.1.6: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-qht06.out
    7. 192.168.1.2: starting secondarynamenode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-secondarynamenode-qht02.out
    8. starting jobtracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-jobtracker-qht02.out
    9. 192.168.1.5: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht05.out
    10. 192.168.1.4: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht04.out
    11. 192.168.1.6: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht06.out
    12. 192.168.1.3: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-qht03.out

    先启动namenode节点,
    starting namenode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-namenode-qht02.out
    日志文件中的内容:
    2012-04-17 19:50:47,441 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: Namenode up at: 192.168.1.2/192.168.1.2:9000
    ......
    2012-04-17 19:50:56,468 INFO org.apache.hadoop.net.NetworkTopology: Adding a new node: /default-rack/192.168.1.3:50010
    ......
    2012-04-17 19:51:01,550 INFO org.apache.hadoop.net.NetworkTopology: Adding a new node: /default-rack/192.168.1.5:50010
    ......
    2012-04-17 19:51:02,485 INFO org.apache.hadoop.net.NetworkTopology: Adding a new node: /default-rack/192.168.1.6:50010
    .....
    2012-04-17 19:51:10,612 INFO org.apache.hadoop.net.NetworkTopology: Adding a new node: /default-rack/192.168.1.4:50010
    如果日志文件里有异常,需要仔细检查!
    下面是通过图形界面查询的信息:


    然后是分别ssh到四台datanode机器上,启动他们!启动过程可以查看日志文件!
    接着启动secondarynamenode(和namenode是一台机器)!





    展开全文
  • Hadoop学习

    2014-09-28 13:41:18
    hadoop学习总结   Hadoop 学习总结之一:HDFS简介 Hadoop学习总结之二:HDFS读写过程解析 Hadoop学习总结之三:Map-Reduce入门 Hadoop学习总结之四:Map-Reduce的过程解析  Hadoop学习总结之五:Hadoop的...
    展开全文
  • hadoop学习笔记

    热门讨论 2010-12-20 18:37:07
    学习hadoop的笔记,并在公司做的报告,给大家共享下
  • hadoop学习笔记篇----基础介绍

    万次阅读 2019-09-03 00:13:28
    Apache版本最原始(最基础)的版本,对于入门学习最好。 Cloudera在大型互联网企业中用的较多。 Hortonworks文档较好。 1、Hadoop的特性 4V: Volume大量 Velocity高速 Variety多样 Value低价值密度 .....

    Hadoop三大发行版本:Apache、Cloudera、Hortonworks。

    Apache版本最原始(最基础)的版本,对于入门学习最好。

    Cloudera在大型互联网企业中用的较多。

    Hortonworks文档较好。

     

    1、Hadoop的特性

    4V:
        Volume大量
        Velocity高速
        Variety多样
        Value低价值密度
        
    4高:
        高可用:     Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。
        高扩展性: 在集群间分配任务数据,可方便的扩展数以千计的节点。
        高效性:     在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
        高容错性: 能够自动将失败的任务重新分配。

    2、hadoop目录介绍

    1、bin/ 目录下有三个用的到的文件 分别是 hadoop   hdfs     yarn
    hdfs管理静态文件资源的
    hadoop管理集群的
    yarn管理资源调度的

    -rwxr-xr-x. 1 hadoop100 angel100 164460 7月  18 2018 container-executor
    -rwxr-xr-x. 1 hadoop100 angel100   6488 7月  18 2018 hadoop
    -rwxr-xr-x. 1 hadoop100 angel100   8786 7月  18 2018 hadoop.cmd
    -rwxr-xr-x. 1 hadoop100 angel100  12223 7月  18 2018 hdfs
    -rwxr-xr-x. 1 hadoop100 angel100   7478 7月  18 2018 hdfs.cmd
    -rwxr-xr-x. 1 hadoop100 angel100   5953 7月  18 2018 mapred
    -rwxr-xr-x. 1 hadoop100 angel100   6310 7月  18 2018 mapred.cmd
    -rwxr-xr-x. 1 hadoop100 angel100   1776 7月  18 2018 rcc
    -rwxr-xr-x. 1 hadoop100 angel100 204678 7月  18 2018 test-container-executor
    -rwxr-xr-x. 1 hadoop100 angel100  13352 7月  18 2018 yarn
    -rwxr-xr-x. 1 hadoop100 angel100  11386 7月  18 2018 yarn.cmd


    2、etc/目录存放配置文件
    3、include/目录 其它代码的文件
    4、lib文件动态链接库 了解内容
    5、libexec和lib差不多
    6、share/目录一些说明文档
    7、sbin/目录
    存放大量Hadoop 集群启动 停止 脚本命令
    如:
    hadoop-daemon
    slaves 配置集群的时候
    start-all 启动全部集群
    start-dfs 启动dfs
    以及对应的stop-xxx


    -rwxr-xr-x. 1 hadoop100 angel100 2752 7月  18 2018 distribute-exclude.sh
    -rwxr-xr-x. 1 hadoop100 angel100 6452 7月  18 2018 hadoop-daemon.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1360 7月  18 2018 hadoop-daemons.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1640 7月  18 2018 hdfs-config.cmd
    -rwxr-xr-x. 1 hadoop100 angel100 1427 7月  18 2018 hdfs-config.sh
    -rwxr-xr-x. 1 hadoop100 angel100 2291 7月  18 2018 httpfs.sh
    -rwxr-xr-x. 1 hadoop100 angel100 3128 7月  18 2018 kms.sh
    -rwxr-xr-x. 1 hadoop100 angel100 4080 7月  18 2018 mr-jobhistory-daemon.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1648 7月  18 2018 refresh-namenodes.sh
    -rwxr-xr-x. 1 hadoop100 angel100 2145 7月  18 2018 slaves.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1779 7月  18 2018 start-all.cmd
    -rwxr-xr-x. 1 hadoop100 angel100 1471 7月  18 2018 start-all.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1128 7月  18 2018 start-balancer.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1401 7月  18 2018 start-dfs.cmd
    -rwxr-xr-x. 1 hadoop100 angel100 3734 7月  18 2018 start-dfs.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1357 7月  18 2018 start-secure-dns.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1571 7月  18 2018 start-yarn.cmd
    -rwxr-xr-x. 1 hadoop100 angel100 1347 7月  18 2018 start-yarn.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1770 7月  18 2018 stop-all.cmd
    -rwxr-xr-x. 1 hadoop100 angel100 1462 7月  18 2018 stop-all.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1179 7月  18 2018 stop-balancer.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1455 7月  18 2018 stop-dfs.cmd
    -rwxr-xr-x. 1 hadoop100 angel100 3206 7月  18 2018 stop-dfs.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1340 7月  18 2018 stop-secure-dns.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1642 7月  18 2018 stop-yarn.cmd
    -rwxr-xr-x. 1 hadoop100 angel100 1340 7月  18 2018 stop-yarn.sh
    -rwxr-xr-x. 1 hadoop100 angel100 4295 7月  18 2018 yarn-daemon.sh
    -rwxr-xr-x. 1 hadoop100 angel100 1353 7月  18 2018 yarn-daemons.sh

    展开全文
  • Hadoop学习路径

    千次阅读 2018-05-04 20:10:37
    1.2、Hadoop平台生态圈熟悉了解开源Hadoop平台生态圈,以及第三方大数据平台,查找一些Hadoop入门介绍博客或者官网,了解: What’s Hadoop Why Hadoop exists How to Use Hadoop 1.3、Hado

    学习路径

    一、平台基础

    1.1、大数据
    了解什么是大数据,大数据入门,以及大数据介绍。
    以及大数据中存在的问题,包括存储,计算的问题,有哪些解决策略。
    1.2、Hadoop平台生态圈
    熟悉了解开源Hadoop平台生态圈,以及第三方大数据平台,查找一些Hadoop入门介绍博客或者官网,了解:
    What’s Hadoop
    Why Hadoop exists
    How to Use Hadoop
    1.3、Hadoop家族成员
    Hadoop是一个庞大的家族,包含存储,计算等一系列产品组件,需要了解其中的一系列组件,包括HDFS,MapReduce,Yarn,Hive,HBase,ZooKeeper,Flume,Kafka,Sqoop,HUE,Phoenix,Impala,Pig,Oozie,Spark等,知道其干什么,维基百科定义。
    1.4、HDFS
    分布式存储HDFS,了解HDFS架构,HDFS的存储机制,各节点协作关系需理解清楚。
    1.5、Yarn
    分布式资源管理Yarn,熟悉Yarn架构,以及如何进行资源管理的机制。
    1.6、MapReduce
    分布式计算MapReduce,对MapReduce底层架构,处理方案进行了解,计算架构方案,了解MapReduce计算的优势,以及劣势。
    1.7、HBase
    大数据高效存储HBase,了解HBase底层架构,HBase的应用场景,存储方案。
    1.8、Hive
    大数据仓库Hive,了解Hive的存储机制,Hive的事务型变迁,Hive的应用场景,以及Hive底层计算。
    1.9、Spark
    内存计算平台Spark,熟悉Spark内存计算架构,计算流程,Spark的运行模式,以及应用场景。

    二、平台进阶

    2.1、HDFS
    通过命令行操作HDFS,文件查看,上传,下载,修改文件,赋权限等。
    通过java demo连接操作HDFS,实现文件读取,上传,下载功能。
    通过DI工具,配置HDFS操作流程,实现关系型数据库文件到HDFS存储,HDFS文件保存到本地目录中。
    2.2、MapReduce
    Eclipse绑定Hadoop环境,添加MapReduce Location,用eclipse运行MapReduce的经典实例WordCount,看其中原理,尝试修改为中文词汇统计,并排除不相关词汇。
    2.3、Hive
    通过命令行操作Hive,进行beeline连接,SQL语句操作Hive数据仓库。
    通过java demo连接操作Hive,实现建表,插入数据,查询,删除数据记录,更新数据,删除表等操作。
    通过DI工具,配置关系型数据库抽取到Hive事务表流程,不通过直接驱动连接Hive,通过HDFS以及Hive外表进行过度实现。
    2.4、HBase
    在命令行中访问操作使用HBase,建立列族,每列添加数据,修改更新数据查看变化。
    通过java demo,用phoenix驱动,连接HBASE,实现对HBASE的建表,增删改查数据操作。
    DI工具需要修改源码,或者添加phoenix组件,才能使用,因为phoenix插入语句不是Insert into,而是Upsert into,无法与DI工具匹配。
    2.5、Spark
    在命令行中,运行pyspark,以及spark shell,进行spark命令行操作,提交spark示例任务,进行试运行。
    切换Spark运行模式,进行命令行尝试体验。
    通过java demo连接Spark,进行任务的分发计算运行。

    三、平台高级

    针对上述组件,进行熟练使用,熟能生巧,举一反三,能够根据场景编写MapReduce代码,Spark代码等,针对Hive,HBase深入理解支持的SQL类型,存储过程,触发器等如何进行操作,能够根据需求设计最优的解决方案。

    四、平台深度

    深读组件源码,理解平台部署中各个配置的意义及影响,以及如何通过源码以及配置对组件进行优化,修改源码提高Hadoop平台的容错性,扩展性,稳定性等。

    展开全文
  • hadoop 学习笔记

    千次阅读 2014-04-10 17:22:29
    hadoop伪分布环境搭建:  1.准备工作  这里我使用的是Win7系统32位,VM10虚拟机Linux是6.4版本,hadoop是1.0 jdk是1.6  1.1 将hadoop-1.0.4.gz和jdk通过WinSCP传到Linux系统的/uer/local/目录下  1.2 解压...
  • Hadoop学习闲谈

    2016-07-22 17:36:28
    2016年1月25号开始学习hadoop,到今天2016年7月22号,到现在满打满算已经6个月了,在学习hadoop这段时间可以感受到自己在很快的进步。 1、通过对hadoop学习,使我感受到了实战与实践的重要性 2、逻辑思维能力...
  • Hadoop学习笔记——Hadoop常用命令

    千次阅读 2016-03-23 14:06:03
    Hadoop下有一些常用的命令,通过这些命令可以很方便操作Hadoop上的文件。1、查看指定目录下的内容语法:hadoop fs -ls 文件目录2、打开某个已存在的文件语法:hadoop fs -cat 文件地址 [ | more] []表示的是可选...
  • 进行学习首先得选择一本书,这里我选择Hadoop+Spark生态系统操作与实战指南,因为书比较薄,适合入门。作者也提供了相关的视频和配置文件,环境。 hadoop权威指南,书是不错,不过太厚,目前入门不想使用此书,此书...
  • Hadoop学习从零到一系列课程(1)

    万人学习 2016-04-06 11:03:18
    Hadoop入门教程,通过本节课程带您一步步熟悉和掌握Hadoop基础,内容包括分布式系统介绍、Hadoop的起源、Borg、MapReduce、架构、搭建。
  • Hadoop学习小结

    千次阅读 2013-12-08 10:12:02
    还在学校的时候,就知道Hadoop的存在了。 2012年在公司实习的时候,买了《Hadoop权威指南第2版》,大致看了下。 今年,抽空也大致喵了几眼。 最大的感悟就是:光看不做,还是不行。 Hadoop最坑最脑残的地方就是,...
  • Hadoop学习笔记:Apache Hadoop生态系统

    千次阅读 2013-12-09 21:05:18
    Hadoop学习笔记:Apache Hadoop生态系统 作者:雨水,时间:2013-12-9 博客地址:http://blog.csdn.net/gobitan Hadoop从诞生至今已经发展成为一个大数据相关的庞大的软件生态系统。这里收集整理了跟Hadoop相关的...
  • 注:本文的主要目的是为了记录自己的...要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来
  • hadoop学习笔记(四):hadoop文件结构 阅读目录 hadoop完整安装目录结构: 回到顶部 hadoop完整安装目录结构: 比较重要的包有以下4个: src hadoop源码包。最核心的代码所在目录为core、hdfs和mapred,...
  • Hadoop 学习环境搭建

    2018-04-12 10:42:31
    有一个 Hadoop学习环境是学习大数据技术的前提,搭建 Hadoop 的过程也是学习了解 Hadoop 技术的过程,没有 Hadoop 学习环境你怎么验证和实战?而大部分初学者要经过好几次的失败才能成功搭建起 Hadoop 平台,那么...
  • hadoop 学习总结1

    千次阅读 2013-07-05 16:28:21
    最近在学习云计算,研究Haddop框架,费了一整天时间将Hadoop在Linux下完全运行起来,看到官方的map-reduce的demo程序WordCount,仔细研究了一下,算做入门了。  其实WordCount并不难,只是一下子接触到了很多的...
  • hadoop 学习总结2

    千次阅读 2013-10-12 17:30:49
    学习Hadoop有一段时间了,主要是通过《Hadoop权威指南》,同时参考了网上的很多文章。静下心来,盘点下这一段时间的收获,归纳总结,做一个学习笔记,因为可以记录的东西实在太多了,所以这里就着重记录我在学习过程...
  • hadoop集群搭建 阅读目录 一、准备工作: 二、搭建Hadoop集群: 回到顶部 一、准备工作: 1、环境:CentOS6.4-64bit JDK1.7-64bit  基于虚拟机拷贝4个虚拟机,一个作为Master,另外三个作为Slave,在这拷贝...
  • hadoop集群搭建 阅读目录 一、准备工作: 二、搭建Hadoop集群: 回到顶部 一、准备工作: 1、环境:CentOS6.4-64bit JDK1.7-64bit  基于虚拟机拷贝4个虚拟机,一个作为Master,另外三个作为Slave,在这拷贝...
  •  前几天对hadoop分布式集群的安装过程进行了总结,对hadoop的集群搭建只是学习hadoop中的艰难的一步,后面还需要学习更多的知识,不知道自己能不能坚持下去,不知道后面还会遇到多少困难,不过,我想,只要努
  • 生产环境Hadoop大集群完全分布式模式安装 2013-3-7   安装环境 操作平台:vmware2 操作系统:Oracle Enterprise Linux 5.6 软件版本:hadoop-0.22.0,jdk-6u18 集群架构:3+ node,master node(hotel01),...
  • hadoop 学习hadoop基础

    2013-05-16 23:12:14
    1.通过学习hadoop基础知识,了解hadoop,通过hadoop和其他架构的比较,深入了解hadoop的优缺点,及其适应的场景 2.mapreduce是hadoop的核心工能,通过mapreduce的学习掌握hadoop处理分析大数据的基本思路 三、详细...
  • Hadoop在Linux安装完成,如何使用,Hadoop究竟怎么运作,怎么实现单机下测试文件写入写出
  • 1、Hadoop介绍 Hadoop是Apache软件基金会旗下的一个开源分布式计算平台,为用户提供了一个系统底层细节透明的分布式架构,通过Hadoop,可以将大量的廉价机器的计算资源组织起来,解决单机不能解决的海量数据的...
  • Hadoop配置文档(二)这一篇是介绍Hadoop伪分布式的配置中的... Linux配置可以查看 Hadoop学习笔记(三)Linux环境配置Hadoop1.0配置介绍Hadoop的五个核心守护进程有:NameNode,SecondaryNameNode,DataNode,JobTrac

空空如也

1 2 3 4 5 ... 20
收藏数 27,915
精华内容 11,166
关键字:

hadoop学习