Hadoop HDFS 基本概念及安装与配置

class Hadoop HDFS,大数据

Hadoop HDFS 基本概念

什么是HDFS

HDFS(Hadoop Distributed File System)是Hadoop项目的一部分,它是一个分布式文件系统,设计用于运行在商用硬件上的大规模数据集。HDFS具有高容错性,并设计用于在低成本的硬件上部署。它提供了高吞吐量的数据访问,非常适合大数据处理应用。

HDFS的关键特性

  1. 高容错性:通过数据复制机制,保证即使部分节点失败,数据依然可用。
  2. 高吞吐量:适合大数据量的批处理,而不是低延迟的数据访问。
  3. 流式数据访问:一次写入,多次读取。
  4. 大数据集支持:能够存储和处理大规模数据。

HDFS架构

  1. NameNode:管理文件系统的元数据(如文件路径、块位置等)。它是HDFS的主节点。
  2. DataNode:负责存储实际数据块并执行数据的读写操作。
  3. Secondary NameNode:用于辅助NameNode,主要用于定期合并NameNode的元数据快照和编辑日志。

Hadoop HDFS 安装与配置

环境准备

  1. Java环境:Hadoop依赖于Java运行环境(JDK 8或以上)。
  2. SSH:Hadoop集群节点之间需要通过SSH进行无密码通信。

下载Hadoop

从Apache Hadoop官方网站下载最新版本的Hadoop:https://hadoop.apache.org/releases.html

安装与配置步骤

  1. 解压Hadoop包

    tar -xzvf hadoop-<version>.tar.gz
    mv hadoop-<version> /usr/local/hadoop
    
  2. 设置环境变量
    ~/.bashrc~/.profile文件中添加以下内容:

    export HADOOP_HOME=/usr/local/hadoop
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    
  3. 配置Hadoop核心配置文件

    • 编辑core-site.xml

      <configuration>
          <property>
              <name>fs.defaultFS</name>
              <value>hdfs://localhost:9000</value>
          </property>
      </configuration>
      
    • 编辑hdfs-site.xml

      <configuration>
          <property>
              <name>dfs.replication</name>
              <value>1</value>
          </property>
          <property>
              <name>dfs.namenode.name.dir</name>
              <value>file:///usr/local/hadoop/hdfs/namenode</value>
          </property>
          <property>
              <name>dfs.datanode.data.dir</name>
              <value>file:///usr/local/hadoop/hdfs/datanode</value>
          </property>
      </configuration>
      
  4. 格式化NameNode

    hdfs namenode -format
    
  5. 启动HDFS

    start-dfs.sh
    
  6. 验证安装
    打开浏览器访问http://localhost:9870,查看NameNode的Web界面。

示例:在HDFS上操作文件

  1. 创建目录

    hdfs dfs -mkdir /user
    hdfs dfs -mkdir /user/hadoop
    
  2. 上传文件

    hdfs dfs -put localfile.txt /user/hadoop/
    
  3. 查看文件

    hdfs dfs -ls /user/hadoop/
    
  4. 读取文件内容

    hdfs dfs -cat /user/hadoop/localfile.txt
    
  5. 删除文件

    hdfs dfs -rm /user/hadoop/localfile.txt
    

注意事项

  • 确保所有节点上的Hadoop配置文件一致。
  • 定期备份NameNode的元数据。
  • 根据集群规模调整HDFS的复制因子和块大小,以优化性能。

通过以上步骤,你可以在单机或小型集群上搭建和运行Hadoop HDFS,进行分布式存储和处理大规模数据。

评论区
评论列表
menu