Hadoop命令与配置详解

需积分: 44 19 下载量 34 浏览量 更新于2024-08-27 收藏 51KB DOC 举报
"Hadoop命令大全" Hadoop是一个开源的分布式计算框架,主要由Apache基金会维护。这个框架允许在大量计算机(节点)组成的集群上存储和处理海量数据。Hadoop的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce,它们共同构成了大数据处理的基础。 在配置Hadoop时,首先需要在`core-site.xml`配置文件中设置`hadoop.tmp.dir`属性,这是Hadoop临时数据的存放位置,防止因系统重启导致的数据丢失。例如,可以将该值设置为`/home/limingguang/hadoopdata`。此外,还需要设置环境变量,包括`JAVA_HOME`, `HADOOP_HOME`, `HIVE_HOME`, `MAHOUT_HOME`等,以便于访问各个工具的可执行文件,并确保`PATH`变量包含这些目录,这样在终端中就可以直接使用命令而无需指定完整路径。`HADOOP_HOME_WARN_SUPPRESS`变量用于避免重复定义`HADOOP_HOME`时的警告。 了解了基本配置后,让我们深入到Hadoop的常用命令: 1. 列出所有Hadoop Shell支持的命令:`$bin/hadoop fs -help` 这个命令会展示Hadoop文件系统(HDFS)的所有可用操作。 2. 显示关于特定命令的详细信息:`$bin/hadoop fs -help command-name` 通过这个命令,你可以获取某个特定HDFS命令的详细使用说明。 3. 查看历史日志汇总:`$bin/hadoop job -history output-dir` 使用这个命令,你可以查看指定目录下的作业历史记录,包括失败和终止的任务详情。 4. 获取作业的详细信息:`$bin/hadoop job -history all output-dir` 这个命令会提供更多的作业细节,如成功的任务以及每个任务的尝试次数。 5. 格式化新的分布式文件系统:`$bin/hadoop namenode -format` 在启动一个新的Hadoop集群之前,需要先格式化NameNode,以清除旧的数据并准备新的元数据存储。 6. 启动HDFS:`$bin/start-dfs.sh` 运行这个脚本可以启动Hadoop的分布式文件系统服务。这将启动NameNode、DataNode等HDFS组件。 7. 启动MapReduce服务:`$bin/start-yarn.sh` 除了HDFS,MapReduce服务也需要启动,以便进行分布式计算任务。 8. 关闭Hadoop服务:`$bin/stop-dfs.sh` 和 `$bin/stop-yarn.sh` 当完成工作或需要维护时,可以使用这两个命令来停止Hadoop的HDFS和YARN服务。 9. 查看HDFS文件系统状态:`$bin/hadoop dfsadmin -report` 这个命令会显示HDFS的总体状态,包括NameNode、DataNode的数量,磁盘空间使用情况等。 10. 上传文件到HDFS:`$bin/hadoop fs -put local-file hdfs-uri` 使用这个命令可以把本地文件系统中的文件上传到HDFS。 11. 从HDFS下载文件:`$bin/hadoop fs -get hdfs-uri local-filename` 反之,如果你想把HDFS上的文件下载到本地,就用这个命令。 12. 删除HDFS上的文件或目录:`$bin/hadoop fs -rm hdfs-uri` 要删除HDFS上的文件或目录,可以使用`-rm`命令。 以上是Hadoop的基本操作和常用命令,熟练掌握这些命令将有助于在Hadoop环境中高效地管理数据和任务。除此之外,Hadoop还提供了许多其他高级功能,如HBase(分布式数据库)、Hive(数据仓库工具)、Pig(数据分析平台)和Spark(快速、通用的大数据处理引擎),这些工具和框架进一步扩展了Hadoop在大数据处理领域的应用。学习和理解这些命令及工具是成为Hadoop专家的重要步骤。