Linux系统中构建Hadoop
发布时间:2023-07-29 15:30:41 所属栏目:Linux 来源:
导读:hadoop是大数据集群中一个开发分布式程序Hadoop实现了一个分布式文件系统( Distributed File System),其中一个组件是HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐
hadoop是大数据集群中一个开发分布式程序Hadoop实现了一个分布式文件系统( Distributed File System),其中一个组件是HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。 安装ssh服务 进入shell命令,输入如下命令,查看是否已经安装好ssh服务,若没有,则使用如下命令进行安装: sudo apt-get install ssh openssh-server 安装过程还是比较轻松加愉快的。 使用ssh进行无密码验证登录** 1.创建ssh-key,这里我们采用rsa方式,使用如下命令: ssh-keygen -t rsa -P “” 2.出现一个图形,出现的图形就是密码,不用管它 cat ~/.ssh/id_rsa.pub >> authorized_keys(好像是可以省略的) 3.然后即可无密码验证登录了,如下: ssh localhost 下载Hadoop安装包** 下载Hadoop安装也有两种方式 1.直接上官网进行下载,http://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-2.7.1.tar.gz 2.使用shell进行下载,命令如下: wget http://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-2.7.1.tar.gz 貌似第二种的方法要快点,经过漫长的等待,终于下载完成。 解压缩Hadoop安装包** 使用如下命令解压缩Hadoop安装包 tar -zxvf hadoop-2.7.1.tar.gz 解压缩完成后出现hadoop2.7.1的文件夹 配置Hadoop中相应的文件** 需要配置的文件如下,hadoop-env.sh,core-site.xml,mapred-site.xml.template,hdfs-site.xml,所有的文件均位于hadoop2.7.1/etc/hadoop下面,具体需要的配置如下: 1.core-site.xml 配置如下: 其中的hadoop.tmp.dir的路径可以根据自己的习惯进行设置。 2.mapred-site.xml.template配置如下: 3.hdfs-site.xml配置如下: 其中dfs.namenode.name.dir和dfs.datanode.data.dir的路径可以自由设置,最好在hadoop.tmp.dir的目录下面。 补充,如果运行Hadoop的时候发现找不到jdk,可以直接将jdk的路径放置在hadoop.env.sh里面,具体如下: export JAVA_HOME=”/home/leesf/program/java/jdk1.8.0_60″ 运行Hadoop** 在配置完成后,运行hadoop。 1.初始化HDFS系统 在hadop2.7.1目录下使用如下命令: bin/hdfs namenode -format 过程需要进行ssh验证,之前已经登录了,所以初始化过程之间键入y即可。 表示已经初始化完成。 2.开启NameNode和DataNode守护进程 使用如下命令开启: sbin/start-dfs.sh, 3.查看进程信息 使用如下命令查看进程信息 表示数据DataNode和NameNode都已经开启 4.查看Web UI 在浏览器中输入http://localhost:50070,即可查看相关信息,截图如下: 至此,hadoop的环境就已经搭建好了。下面开始使用hadoop来运行一个WordCount例子。 运行WordCount Demo** 1.在本地新建一个文件,笔者在home/leesf目录下新建了一个words文档,里面的内容可以随便填写。 2.在HDFS中新建一个文件夹,用于上传本地的words文档,在hadoop2.7.1目录下输入如下命令: bin/hdfs dfs -mkdir /test,表示在hdfs的根目录下建立了一个test目录 使用如下命令可以查看HDFS根目录下的目录结构 bin/hdfs dfs -ls / 表示在HDFS的根目录下已经建立了一个test目录 3.将本地words文档上传到test目录中 使用如下命令进行上传操作: bin/hdfs dfs -put /home/leesf/words /test/ 使用如下命令进行查看 bin/hdfs dfs -ls /test/ 表示已经将本地的words文档上传到了test目录下了。 4.运行wordcount 使用如下命令运行wordcount: bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /test/words /test/out 运行完成后,在/test目录下生成名为out的文件,使用如下命令查看/test目录下的文件 bin/hdfs dfs -ls /test 表示在test目录下已经有了一个名为Out的文件目录 输入如下命令查看out目录下的文件: bin/hdfs dfs -ls /test/out,结果截图如下: 表示已经成功运行了,结果保存在part-r-00000中。 5.查看运行结果 使用如下命令查看运行结果: bin/hadoop fs -cat /test/out/part-r-00000 至此,运行过程就已经完成了。 Hadoop是一个能够对大量数据进行分布式处理的软件框架。 Hadoop 以一种可靠、高效、可伸缩的方式进行数据处理 (编辑:聊城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐