Hadoop webHDFS设置和使用说明

原文:http://blog.csdn.net/iloveyin/article/details/28264027

----------------------------------------------------------------------------------------

1.配置

namenode的hdfs-site.xml是必须将dfs.webhdfs.enabled属性设置为true,否则就不能使用webhdfs的LISTSTATUS、LISTFILESTATUS等需要列出文件、文件夹状态的命令,因为这些信息都是由namenode来保存的。

在namenode和一台datanode中向/etc/hadoop/conf/hdfs-site.xml中添加属性:

双击代码全选
1
2
3
4
< property
< name >dfs.webhdfs.enabled</ name
< value >true</ value
</ property >


2.使用说明

访问namenode的hdfs使用50070端口,访问datanode的webhdfs使用50075端口。访问文件、文件夹信息使用namenode的IP和50070端口,访问文件内容或者进行打开、上传、修改、下载等操作使用datanode的IP和50075端口。要想不区分端口,直接使用namenode的IP和端口进行所有的webhdfs操作,就需要在所有的datanode上都设置hefs-site.xml中的dfs.webhdfs.enabled为true。


3.curl操作webhdfs

创建并写一个文件
curl -i -X PUT "http://localhost:50070/webhdfs/v1/<PATH>?op=CREATE
[&overwrite=<true|false>][&blocksize=<LONG>][&replication=<SHORT>]
[&permission=<OCTAL>][&buffersize=<INT>]“
curl -i -X PUT -T <LOCAL_FILE> "http://<DATANODE>:<PORT>/webhdfs/v1/<PATH>?
op=CREATE...“
注意这个地方填入的是DataNode的信息


在一个文件内追加内容
curl -i -X POST "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=APPEND[&buffersize=<INT>]”
curl -i -X POST -T <LOCAL_FILE> "http://<DATANODE>:<PORT>/webhdfs/v1/<PATH>?
op=APPEND...“
注意该条命令获得的是DataNode的信息。


打开并读取一个文件
curl -i -L "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=OPEN
[&offset=<LONG>][&length=<LONG>][&buffersize=<INT>]“


创建一个目录
curl -i -X PUT "http://<HOST>:<PORT>/<PATH>?op=MKDIRS[&permission=<OCTAL>]“


重名命文件、文件夹
curl -i -X PUT "<HOST>:<PORT>/webhdfs/v1/<PATH>?op=RENAME&destination=<PATH>"


删除文件/文件夹
curl -i -X DELETE "http://<host>:<port>/webhdfs/v1/<path>?op=DELETE [&recursive=<true|false>]“


文件/ 文件夹的状态信息
curl -i “http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=GETFILESTATUS“


目录列表
curl -i "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=LISTSTATUS”


获取目录的上下文环境汇总信息
curl -i "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=GETCONTENTSUMMARY"


获取Check Sum File
curl -i "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=GETFILECHECKSUM”


获取Home 目录
curl -i "http://<HOST>:<PORT>/webhdfs/v1/?op=GETHOMEDIRECTORY”


设置权限
curl -i -X PUT "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=SETPERMISSION [&permission=<OCTAL>]“


设置所有者
curl -i -X PUT "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=SETOWNER [&owner=<USER>][&group=<GROUP>]"


设置备份
curl -i -X PUT "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=SETREPLICATION [&replication=<SHORT>]“




  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop集群安装的详细说明文档, 實作七: Hadoop 叢集安裝 前言 您手邊有兩台電腦,假設剛剛操作的電腦為"主機一" ,另一台則為"主機二" 。則稍後的環境如下 • 管理Data的身份 管理Job的身份 "主機一" namenode + datanode jobtracker + tasktracker "主機二" datanode tasktracker 這個實做會架設運作在叢集環境上的Hadoop,因此若是你的電腦還存在著 之前的實做一的環境,請先作step 0,以移除掉之前的設定。 • 確認您"主機一"的 hostname 與 "主機二" 的 hostname,並將下面指令 有 主機一與主機二 的地方作正確的取代 • 維持好習慣,請幫你待會要操作的主機設root密碼 • ~$ sudo passwd 清除所有在實做一作過的環境 在 "主機一" (有操作過 實做一 的電腦)上操作 • ~$ cd ~ ~$ /opt/hadoop/bin/stop-all.sh ~$ rm -rf /tmp/hadoop-hadooper* ~$ sudo rm -rf /opt/hadoop ~$ rm -rf ~/.ssh step 0. 設定機器的ip & hostname 資訊 step 1. 設定兩台機器登入免密碼 請注意我們實驗環境已經把 /etc/ssh/ssh_config裡的StrictHostKeyChecking改成no,下面的指令可以檢查,如果你的設定 不同的話,請修改此檔會比較順。 • $ cat /etc/ssh/ssh_config |grep StrictHostKeyChecking StrictHostKeyChecking no 在"主機一" 上操作 • 接著將key產生並複製到其他node上 • ~$ ssh-keygen -t rsa -f ~/.ssh/id_rsa -P "" ~$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys ~$ scp -r ~/.ssh 主機二:~/ 測試看看是否登入免密碼 • ~$ ssh 主機二 ~$ ssh 主機一 ~$ exit ~$ exit ~$ 完成後請登入確認不用輸入密碼,(第一次登入需按 yes ,第二次就可以直接登入到系統),以免日後輸入密碼不隻手軟而 已.... • step 2. 安裝java 為兩台電腦安裝java • "主機一" & "主機二" 都要操作以下指令 ◦ ~$ sudo apt-get purge java-gcj-compat ~$ sudo apt-get install sun-java6-bin sun-java6-jdk sun-java6-jre ~$ ssh 主機二 前言 清除所有在實做一作過的環境 step 0. 設定機器的ip & hostname 資訊 step 1. 設定兩台機器登入免密碼 step 2. 安裝java step 3. 下載安裝Hadoop到"主機一" step 4. 設定 hadoop-env.sh step 5. 設定 hadoop-site.xml step 6. 設定masters及slaves step 7. Hadoop_Home內的資料複製到其他主機上 step 8. 格式化HDFS step 9. 啟動Hadoop step 10. 停止hadoop 練習 页码,1/5 Hadoop_Lab7_018 – Cloud Computing 2011-03-25 http://trac.nchc.org.tw/cloud/wiki/Hadoop_Lab7_018 ~$ sudo apt-get purge java-gcj-compat ~$ sudo apt-get install sun-java6-bin sun-java6-jdk sun-java6-jre ~$ exit step 3. 下載安裝Hadoop到"主機一" 先在"主機一" 上安裝,其他node的安裝等設定好之後在一起作 • ~$ cd /opt /opt$ sudo wget http://ftp.twaren.net/Unix/Web/apache/hadoop/core/hadoop-0.18.3/hadoop-0.18.3.t /opt$ sudo tar zxvf hadoop-0.18.3.tar.gz /opt$ sudo mv hadoop-0.18.3/ hadoop /opt$ sudo chown -R hadooper:hadooper hadoop step 4. 設定 hadoop-env.sh "主機一" 上用gedit 編輯 conf/hadoop-env.sh • /opt$ cd hadoop/ /opt/hadoop$ gedit conf/hadoop-env.sh 將以下資訊貼入 conf/hadoop-env.sh 檔內 export JAVA_HOME=/usr/lib/jvm/java-6-sun export HADOOP_HOME=/opt/hadoop export HADOOP_CONF_DIR=/opt/hadoop/conf export HADOOP_LOG_DIR=/tmp/hadoop/logs export HADOOP_PID_DIR=/tmp/hadoop/pids 注意,在此實做中,我們多設定了HADOOP_PID_DIR及HADOOP_LOG_DIR的參數,並且把值寫入到我們hadooper的家目 錄中,此舉並非完全必要,但一個目的是介紹更多hadoop-env.sh內的參數,另一目的為讓log,pid等常變資料與hadoop家目 錄分離 • step 5. 設定 hadoop-site.xml 第二個設定檔是 hadoop-site.xml,由於官方所提供的範例並無法直接執行,因此我們參考線上文件,做了以下的修改。 • /opt/hadoop# gedit conf/hadoop-site.xml 將以下資料取代掉原本的內容 <configuration> <property> <name>fs.default.name</name> <value>hdfs://主機一:9000/</value> <description> </description> </property> <property> <name>mapred.job.tracker</name> <value>主機一:9001</value> <description> </description> </property> <property> <name>hadoop.tmp.dir</name> <value>/tmp/hadoop/hadoop-${user.name}</value> <description> </description> </property> </configuration> 注意! 我們多加了一個參數hadoop.tmp.dir,讓預設的中介資料存放在/tmp/hadoop/ 而不是/tmp/ 下,更多內容可以看 conf/hadoop-default.xml • 注意!fs.default.name = hdfs://主機一:9000/ ;而mapred.job.tracker = 主機一:9001,看出差異了嗎!一個有指 hdfs://,一個沒有,重要!易混淆。 • step 6. 設定masters及slaves 接著我們要編輯哪個主機當namenode, 若有其他主機則為datanodes • 編輯 conf/slaves ◦ 页码,2/5 Hadoop_Lab7_018 – Cloud Computing 2011-03-25 http://trac.nchc.org.tw/cloud/wiki/Hadoop_Lab7_018 /opt/hadoop$ gedit conf/slaves 原本內容只有localhost一行,請刪除此行並換上"主機一" 及"主機二" 的ip 主機一 主機二 step 7. Hadoop_Home內的資料複製到其他主機上 在"主機一" 上對遠端"主機二" 作開資料夾/opt/hadoop及權限設定 • /opt/hadoop$ ssh 主機二 "sudo mkdir /opt/hadoop" /opt/hadoop$ ssh 主機二 "sudo chown -R hadooper:hadooper /opt/hadoop" 複製"主機一" 的hadoop資料夾到"主機二" 上 • /opt/hadoop$ scp -r /opt/hadoop/* 主機二:/opt/hadoop/ step 8. 格式化HDFS 以上我們已經安裝及設定好 Hadoop 的叢集環境,接著讓我們來啟動 Hadoop ,首先還是先格式化hdfs,在"主機一" 上操作 • /opt/hadoop$ bin/hadoop namenode -format 執行畫面如: 09/03/23 20:19:47 INFO dfs.NameNode: STARTUP_MSG: /************************************************************ STARTUP_MSG: Starting NameNode STARTUP_MSG: host = 主機一 STARTUP_MSG: args = [-format] STARTUP_MSG: version = 0.18.3 STARTUP_MSG: build = https://svn.apache.org/repos/asf/hadoop/core/branches/branch-0.18 -r 736 ************************************************************/ 09/03/23 20:19:47 INFO fs.FSNamesystem: fsOwner=hadooper,hadooper 09/03/23 20:19:47 INFO fs.FSNamesystem: supergroup=supergroup 09/03/23 20:19:47 INFO fs.FSNamesystem: isPermissionEnabled=true 09/03/23 20:19:47 INFO dfs.Storage: Image file of size 82 saved in 0 seconds. 09/03/23 20:19:47 INFO dfs.Storage: Storage directory /tmp/hadoop/hadoop-hadooper/dfs/name has b 09/03/23 20:19:47 INFO dfs.NameNode: SHUTDOWN_MSG: /************************************************************ SHUTDOWN_MSG: Shutting down NameNode at 主機一 ************************************************************/ step 9. 啟動Hadoop bin/start-dfs.sh腳本會參照namenode上${HADOOP_CONF_DIR}/slaves文件的內容,在所有列出的slave上啟動 datanode。 • 在"主機一" 上,執行下面的命令啟動HDFS: • /opt/hadoop$ bin/start-dfs.sh http://主機一:50070/ - Hadoop DFS 狀態 • 页码,3/5 Hadoop_Lab7_018 – Cloud Computing 2011-03-25 http://trac.nchc.org.tw/cloud/wiki/Hadoop_Lab7_018 • ps: 然而JobTracker還沒啟動,因此 http://主機一:50030/ 網頁無法顯示 • bin/start-mapred.sh腳本會參照jobtracker上${HADOOP_CONF_DIR}/slaves文件的內容,在所有列出的slave上啟動 tasktracker。 • 在"主機一"執行下面的命令啟動Map/Reduce: • /opt/hadoop$ /opt/hadoop/bin/start-mapred.sh 啟動之後, jobtracker也正常運作囉! • http://主機一:50030/ - Hadoop 管理介面 • 页码,4/5 Hadoop_Lab7_018 – Cloud Computing 2011-03-25 http://trac.nchc.org.tw/cloud/wiki/Hadoop_Lab7_018 • step 10. 停止hadoop 在"主機一" 上,執行下面的命令停止HDFS: • /opt/hadoop$ bin/stop-dfs.sh bin/stop-dfs.sh腳本會參照namenode上${HADOOP_CONF_DIR}/slaves文件的內容,在所有列出的slave上停止 namenode ◦ 在"主機一" 上,執行下面的命令停止Map/Reduce: • /opt/hadoop$ bin/stop-mapred.sh bin/stop-mapred.sh腳本會參照jobtracker上${HADOOP_CONF_DIR}/slaves文件的內容,在所有列出的slave上停 止tasktracker。 ◦ 練習 看 conf/hadoop-default.xml 的更多內容 • 和別人組隊,組成4台node的cluster,其中"主機一" 只當 namenode ,"主機二" 只當 jobtracker,而node3, node4 兩台 電腦則身兼 datanode及tasktracker的工作。 • 页码,5/5 Hadoop_Lab7_018 – Cloud Computing 2011-03-25 http://trac.nchc.org.tw/cloud/wiki/Hadoop_Lab7_018
hadoop权威指南第三版发行说明: 第三版会在2012年5月发行。你现在可以预定一份电子版,或购买“Early Release”版,买了这版送正式版。(这话对国人基本没用,呵呵!) 下面大概说说这本书的一些改动。 第三版添加了哪些新东西? 第三版内容覆盖hadoop发行包1.x(原0.20版),也包括0.22,0.23版。书中所有的例子都已经在这些版本上运行过, 除了少数例外的情况,都已经在文中标注了。其实每一版的新特性都在第一章的"Hadoop Releases"描述了。 这一版大部分例子用新API,由于旧版API仍在广泛使用,所以在旁注中仍然讨论它,旧版的实现代码可以在这本书的网站找到。 hadoop 0.23的主要变化是使用了new MapReduce runtime, MapReduce 2,是一个基于新的分布式资源管理系统的YARN,第六章讲如何工作,第七章讲如何应用。 书中包括了更多的mapreduce资料,比如用maven打包MapReduce,设置java环境变量,写MRUnit测试单元(第五章介绍),还有一些更深入的特性,比如输出的提交,分布式缓存等(第8章),任务内存监控(第9章),第4章新增了通过mapreduce job处理avro 数据,第5章介绍了用oozie运行简单的workflow 工作流。 (很遗憾没有coodenater的介绍) 第3章在讲HDFS时介绍了高可用性,联合特性,及新的WebHDFS和HttpFS文件系统。 Pig, Hive, Sqoop, and ZooKeeper这几个框架的最新版的特性和修改都有扩展介绍。 这本书还有许多修改和提高。 原文: Third Edition The third edition is due to be published in May 2012. You can pre-order a copy, or buy the “Early Release” ebook today (you will receive the final ebook version when it is available for no extra charge). The following section is from the book’s preface, and outlines the changes in the third edition. What’s New in the Third Edition? The third edition covers the 1.x (formerly 0.20) release series of Apache Hadoop, as well as the newer 0.22 and 0.23 series. With a few exceptions, which are noted in the text, all the examples in this book run against these versions. The features in each release series are described at a high-level in "Hadoop Releases" in Chapter 1. This edition uses the new MapReduce API for most of the examples. Since the old API is still in widespread use, it continues to be discussed in the text alongside the new API, and the equivalent code using the old API can be found on the book’s website. The major change in Hadoop 0.23 is the new MapReduce runtime, MapReduce 2, which is built on a new distributed resource management system called YARN. This edition includes new sections covering MapReduce on YARN: how it works (Chapter 6) and how to run it (Chapter 9). There is more MapReduce material too, including development practices like packaging MapReduce jobs with Maven, setting the user’s Java classpath, and writing tests with MRUnit (all in Chapter 5); and more depth on features such as output committers, the distributed cache (both in Chapter 8), and task memory monitoring (Chapter 9). There is a new section on writing MapReduce jobs to process Avro data (Chapter 4), and on running a simple MapReduce workflow in Oozie (Chapter 5). The chapter on HDFS (Chapter 3) now has introductions to High Availability, Federation, and the new WebHDFS and HttpFS filesystems. The chapters on Pig, Hive, Sqoop, and ZooKeeper have all been expanded to cover the new features and changes in their latest releases. In addition, numerous corrections and improvements have been made throughout the book.
【资源说明】 毕业设计-基于Hadoop平台开发的视频收视率分析源码+项目说明.zip ​ 本项目分为四个模块,分别为爬虫模块、离线数据分析模块、公共基础模块、web展示模块。首先用WebMagic爬取的B站视频数据作为数据源,构建以离线分析为基础囊括大数据主要离线技术的架构进行数据分析。针对系统的处理速度与实际生产环境的所需性,对分布式架构进行了研究。在搭建技术架构的必要基础之上采用了分布式的项目部署方式,保证在生产环境下的实际生产项目的容灾性和可扩展性,提高了系统的应用性和效率。最终完成了基于大数据技术的视频收视率分析设计与实现。具体的内容有: (1) 采用三台虚拟机进行分布式环境的搭建,模拟生产环境 (2) 使用WebMagic爬虫技术爬取B站视频数据信息,将采集到的数据导入kafka中,使用Flume框架技术从kafka采集数据到Hdfs并将数据导入到Hive中,然后使用Hue操作Hive进行离线数据分析,最后利用sqoop导入mysql,整个流程采用azkaban进行脚本定时调度,达到系统需要具备的视频收视分析功能 (3) 大数据分析展示系统采用企业中现今流行的SpringBoot+Mybatis框架进行系统的后台服务层的搭建,系统首先需要具备用户登录注册等基础功能,前台采用Bootstrap+Echarts技术实现数据展示模块。 ## 爬虫模块 video-log-spider:进行数据爬取,爬取B站视频信息 ## 离线数据分析模块 video-log-analysis:对数据进行预处理,用Hive进行离线分析 ## 公共基础模块 video-log-common:封装全局异常处理和常用工具 ## web展示模块 video-log-web:用于离线分析后的web展示,已完成的功能有每日采集概况、总采集概况、各分类播放排行、总播放排行、活跃用户分析、总收藏排行、总弹幕排行 【备注】 1.项目代码均经过功能验证ok,确保稳定可靠运行。欢迎下载使用体验! 2.主要针对各个计算机相关专业,包括计算机科学、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师、企业员工。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、初期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈!
# 基于Hadoop的视频收视率分析 ​ 本项目分为四个模块,分别为爬虫模块、离线数据分析模块、公共基础模块、web展示模块。首先用WebMagic爬取的B站视频数据作为数据源,构建以离线分析为基础囊括大数据主要离线技术的架构进行数据分析。针对系统的处理速度与实际生产环境的所需性,对分布式架构进行了研究。在搭建技术架构的必要基础之上采用了分布式的项目部署方式,保证在生产环境下的实际生产项目的容灾性和可扩展性,提高了系统的应用性和效率。最终完成了基于大数据技术的视频收视率分析设计与实现。具体的内容有: (1) 采用三台虚拟机进行分布式环境的搭建,模拟生产环境 (2) 使用WebMagic爬虫技术爬取B站视频数据信息,将采集到的数据导入kafka中,使用Flume框架技术从kafka采集数据到Hdfs并将数据导入到Hive中,然后使用Hue操作Hive进行离线数据分析,最后利用sqoop导入mysql,整个流程采用azkaban进行脚本定时调度,达到系统需要具备的视频收视分析功能 (3) 大数据分析展示系统采用企业中现今流行的SpringBoot+Mybatis框架进行系统的后台服务层的搭建,系统首先需要具备用户登录注册等基础功能,前台采用Bootstrap+Echarts技术实现数据展示模块。 ## 爬虫模块 video-log-spider:进行数据爬取,爬取B站视频信息 ## 离线数据分析模块 video-log-analysis:对数据进行预处理,用Hive进行离线分析 ## 公共基础模块 video-log-common:封装全局异常处理和常用工具 ## web展示模块 video-log-web:用于离线分析后的web展示,已完成的功能有每日采集概况、总采集概况、各分类播放排行、总播放排行、活跃用户分析、总收藏排行、总弹幕排行 -------- 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
### 回答1: Hadoop HDFS(分布式文件系统)的配置文件hdfs-site.xml可以用来设置各种HDFS相关的属性。以下是一些常用的属性及其说明: 1. dfs.replication:指定HDFS中文件的副本数。默认为3,可以根据需要进行修改。 2. dfs.blocksize:指定HDFS块的大小。默认为128MB,可以根据需要进行修改。 3. dfs.namenode.name.dir:指定HDFS名称节点的数据存储目录。多个目录用逗号分隔。 4. dfs.datanode.data.dir:指定HDFS数据节点的数据存储目录。多个目录用逗号分隔。 5. dfs.permissions.enabled:指定是否启用HDFS的权限控制功能。默认为true。 6. dfs.webhdfs.enabled:指定是否启用WebHDFS服务。默认为false。 以下是一个示例hdfs-site.xml文件: ```xml <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.blocksize</name> <value>134217728</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/home/hadoop/hdfs/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/hadoop/hdfs/datanode</value> </property> <property> <name>dfs.permissions.enabled</name> <value>true</value> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> </configuration> ``` 请注意,上述示例中的路径只是示例,您需要根据您自己的环境进行修改。 ### 回答2: Hadoop是一款开源的分布式计算系统,HDFSHadoop Distributed File System)是Hadoop的分布式文件系统,它们的运用可以很大程度上优化大数据的处理和分析能力。在HadoopHDFS使用过程中,需要对hdfs-site.xml文件进行配置,以满足个性化或特殊的需求。 hdfs-site.xml文件主要包含了HDFS的配置信息,包括副本数量、数据块大小、损毁的数据块检测间隔时间、NameNode等。下面,我会对一些比较重要的配置进行详细的讲解。 第一个重要配置是dfs.replication,这个参数是指数据的副本数量。默认情况下,每个数据块都会被复制3份,保证数据的可靠性。但对于一些特殊应用场景,我们可以根据实际需求来更改复制的数量。 第二个重要配置是dfs.blocksize,这个参数用于设置数据块的大小。默认情况下,数据块的大小为64MB,但在实际应用中,我们可以根据数据的大小和处理能力来设置不同大小的数据块。 第三个重要配置是dfs.namenode.name.dir和dfs.datanode.data.dir,这两个参数分别用于设置NameNode和DataNode的存放路径。对于NameNode,它需要将HDFS中所有文件和目录的元数据都存放在本地文件系统上,所以需要设置它的存放路径。对于DataNode,它主要负责存储和读取数据块,所以也要设置存放路径。 第四个重要配置是dfs.client.use.datanode.hostname,这个参数是用来控制客户端与DataNode之间的通讯方式。默认情况下,客户端会使用DataNode的IP地址来进行通讯,但如果DataNode的IP地址发生了改变,那么就需要重新配置。如果将dfs.client.use.datanode.hostname设置为true,则客户端会直接使用DataNode的hostname来进行通讯,这样可以减少因IP地址变化而带来的影响。 除了上述几个重要的配置,hdfs-site.xml文件中还包含了很多其他的配置项,如数据块损毁检测时间间隔、可用空间不足阀值等。这些配置项可以根据实际需求进行调整,以优化HDFS的性能和可靠性。 ### 回答3: Hadoop是一个分布式计算框架,通过将大规模数据进行分割和分布式处理,实现了高效的数据存储和计算。HDFSHadoop分布式文件系统的缩写,它是Hadoop中的一个重要组成部分。HDFS主要用于存储海量数据,并且以高可靠性的方式进行管理。HDFS的配置文件之一就是hdfs-site.xml。 hdfs-site.xml配置文件包含了HDFS的各种参数和配置信息,使用者可以自由根据需求进行修改,以便在实际应用中获得更优秀的性能表现。以下是hdfs-site.xml配置文件的常见参数及其作用: 1. dfs.namenode.name.dir:指定NameNode的本地文件系统中的名称空间保存目录。默认值为/tmp/hadoop-${user.name}/dfs/name。 2. dfs.datanode.data.dir:指定DataNode的数据块保存目录。默认值为/tmp/hadoop-${user.name}/dfs/data。 3. dfs.replication:指定文件的副本数量,该参数直接关系到HDFS数据存储的可靠性。默认值为3。 4. dfs.blocksize:指定HDFS中数据块的大小,数据块是HDFS中管理着的最小数据单元,该参数直接影响到HDFS中大文件的处理效率。默认值为128MB。 5. dfs.permissions:该参数决定是否开启权限控制,如果设置为false,则关闭权限控制。默认值为true。 6. dfs.nameservices:设置提供逻辑名称空间服务的NameNode的数量,如果有多个NameNode则必须指定该参数。默认值为空。 7. dfs.ha.namenodes:指定每个逻辑命名空间下的NameNodeID,如果有多个NameNode则必须指定该参数,多个NameNodeID之间以逗号分隔。 8. dfs.client.failover.proxy.provider:用于配置客户端的高可用服务代理。默认值为org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider。 以上就是hdfs-site.xml常见参数及作用的简单介绍。需要注意的是,该配置文件的参数会因应用场景和需求完全不同,因此需要根据实际情况进行个性化的调整和配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值