zoukankan      html  css  js  c++  java
  • 初识hadoop之分布式文件系统(HDFS)

    Hadoop常用发行版:

    Apache Hadoop

    CDH  Cloudera Distributed Hadoop

    HDP  Hortonworks Data Platfrom

    分布式文件系统(HDFS)

    HDFS架构

    1个master(NameNode/NN)带n个slaves(DataNode/DN)

    HDFS/YARN/HBase都是类似结构

    一个文件会被拆分成多个Block

    blocksize:128M

    130M ==> 2个Block:128M和2M

    NN:
    1)负责客户端请求的响应

    2)负责元数据(文件的名称、副本系数、Block存放的DN)的管理

    DN:

    1)存储用户的文件对应的数据块(Block)

    2)要定期向NN发送心跳信息,汇报本身及其所有的block信息,健康状况

    A typical deployment has a dedicated machine that runs only the NameNode software. Each of the other machines in the cluster runs one instance of the DataNode software.

    NameNode + N个DataNode

    建议:NN和DN部署在不同的节点上

    replication factor:副本系数、副本因子

    HDFS环境搭建

    使用版本:hadoop-2.6.0-cdh5.7.0

    Hadoop伪分布式安装步骤

    1)  jdk安装

    解压:tar –zxvf jdk-7u79-linux-x64.tar.gz –C ~/app

    添加到系统环境变量:~/.bash_profile

    export JAVA_HOME=/home/hadoop/app/jdk1.7.0_79

    eport PATH=$JAVA_HOME/bin:$PATH

    使得环境变量生效:source ~/.bash_profile

    验证java是否配置成功:java –version

    2)  安装ssh

    sudo yum install ssh

    ssh-keygen -t rsa

    cp ~/.ssh/id_rsa.pub ~/.ssh/authorizes_keys

    3)  下载并解压hadoop

    下载:直接在cdh网站下载

    解压:tar –zxvf Hadoop-2.6.0-cdh5.7.0.tar.gz –C ~/app

    4)  hadoop配置文件的修改(hadoop_home/etc/hadoop)

    hadoop-evn.sh

    export JAVA_HOME=/home/Hadoop/app/jdk1.7.0_79

      core-site.xml

           <property>

                    <name>fs.defaultFS</name>

                    <value>hdfs://hadoop000:8020</value>

           </property>

           <property>

                    <name>hadoop.tmp.dir</name>

                    <value>/home/hadoop/app/tmp</value>

            </property>

    hdfs-site.xml

    <property>

                    <name>dfs.replication</name>

                    <value>1</value>

            </property>

    slaves(配置DN的个数)添加主机名称

    5)  启动hfds

    格式化文件系统(仅第一次执行即可,不要重复执行,在bin目录下执行,即在客户端执行):

    hdfs namenode –format

    启动hdfs:sbin/start-dfs.sh

    验证是否启动成功:

    jps

         DataNode

         SecondaryNameNode

         NameNode

    浏览器访问方式:http://hadoop000:50070

    6)  停止hdfs

    sbin/stop-dfs.sh

    将hadoop的bin目录配置到环境变量当中

    vi ~/.bash_profile

    export HADOOP_HOME=/root/app/hadoop-2.6.0-cdh5.7.0

    export PATH=$HADOOP_HOME/bin:$PATH

    环境变量生效:

    source ~/.bash_profile

    查看环境变量:

    echo $HADOOP_HOME

    hdfs常用操作命令

    hdfs dfs(hadoop fs)  +

    -ls + / 查看根目录下的文件和文件夹

    -mkdir + /test 在根目录下创建test文件夹

    -put 文件名 + / 将文件上传到根目录当中(拷贝文件)

    -copyFromLocal hello.txt + /test/a/b/h.txt 将文件拷贝到指定路径中

    -text(-cat) + /文件名 查看文件的内容

    -mkdir –p + /test/a/b 递归创建文件夹

    -lsr + / 递归展示文件夹(-ls –R + /)

    -get + /test/a/b/h.txt 将文件拷贝到本地

    -rm + /hello.txt 删除文件

    -rm + -R /test 删除文件夹

  • 相关阅读:
    黄聪:WordPress动作钩子函数add_action()、do_action()源码解析
    黄聪:使用WORDPRESS自带AJAX方法
    黄聪:get_posts 函数 | wordpress
    黄聪:wordpress伪静态的原理
    黄聪:wordpress如何开启文章格式post format
    黄聪:Xmind修改默认字体风格设置
    黄聪:让WordPress主题支持语言本地化(使用poedit软件实现中文翻译功能)
    ArcGIS Pro二次开发-选择gdb
    arcgis pro2.5 改变地图范围
    创建用户SQL
  • 原文地址:https://www.cnblogs.com/lybigdata/p/9753353.html
Copyright © 2011-2022 走看看