在Ubuntu20.04搭建Hadoop分布式平台和分布式内存计算平台Pyspark然后用hadoop加载数据文件统计出单词出现次数

在Ubuntu20.04搭建Hadoop分布式平台和分布式内存计算平台Pyspark然后用hadoop加载数据文件统计出单词出现次数

1.搭建Hadoop平台

详见上一篇博客:(9条消息) 在Ubuntu20.04里安装Hadoop详细步骤(图文),亲测成功!_菜鸡的学习之路的博客-CSDN博客

2.搭建Pyspark平台

使用pip方式安装(直接下载有点慢,用了清华大学的镜像,但是好像换了镜像以后我下载的也挺慢的,不知道大家怎么样):

pip install pyspark -i https://pypi.tuna.tsinghua.edu.cn/simple/

在这里插入图片描述

设置Spark和Hadoop环境变量:打开终端,并编辑你的 Bash 配置文件(例如 .bashrc )。

nano .bashrc

添加以下行来设置 Spark和Hadoop 的环境变量:

export SPARK_HOME=/home/hadoop/.local/lib/python3.8/site-packages/pyspark
export PATH=$SPARK_HOME/bin:$PATH
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export YARN_CONF_DIR=/usr/local/hadoop/etc/hadoop
#下面两行是后面加的,所以下面截图里没有
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin


在这里插入图片描述

重新加载环境变量:保存配置文件后,运行以下命令来重新加载环境变量:

source ~/.bashrc

3.统计单词出现次数

①启动 HDFS:

cd /usr/local/hadoop
./sbin/start-dfs.sh

输入jps查看是否启动成功:

jps

在这里插入图片描述

②启动 YARN:


cd /usr/local/hadoop
./sbin/start-yarn.sh

在这里插入图片描述

③创建输入文件并上传到 HDFS:

  • 创建一个文本文件(例如 input.txt)并输入一些文本内容,保存后退出。

    cd ~
    nano input.txt
    

在这里插入图片描述

在这里插入图片描述

  • 使用以下命令将文件上传到 HDFS(先创建input文件夹再上传):

    创建文件夹input:

    cd /usr/local/hadoop
    hdfs dfs -mkdir /input
    

在这里插入图片描述

查看是否创建成功:

cd bin
hdfs dfs -ls /

在这里插入图片描述

上传input.txt到input:

hadoop fs -put /home/hadoop/input.txt /input

查看是否上传成功:

hadoop fs -ls /input

在这里插入图片描述

④创建一个 Python 脚本(例如 word_count.py)并使用以下代码进行单词计数:

创建脚本:

cd ~
nano word_count.py

在这里插入图片描述

在这里插入图片描述

python代码:

from pyspark.sql import SparkSession

spark = SparkSession.builder.appName("WordCount").getOrCreate()

lines = spark.read.text("hdfs://localhost:9000/input/input.txt").rdd.map(lambda r: r[0])
counts = lines.flatMap(lambda x: x.split(" ")).map(lambda x: (x, 1)).reduceByKey(lambda a, b: a + b)

counts.saveAsTextFile("hdfs://localhost:9000/output/wordcount")

spark.stop()

保存退出。

⑤运行python脚本

spark-submit word_count.py

在这里插入图片描述

⑥查看计数结果,使用以下命令从 HDFS 中获取计数结果:

cd /usr/local/hadoop/bin
hdfs dfs -cat /output/wordcount/part-*

在这里插入图片描述

到这里就结束啦!

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Ubuntu 20.04 Hadoop集群搭建的步骤如下: 1. 安装Java环境:在Ubuntu 20.04上安装Java环境,可以使用OpenJDK或Oracle JDK。 2. 下Hadoop:从官方网站下Hadoop的最新版本。 3. 解压Hadoop:将下Hadoop压缩包解压到指定的目录下。 4. 配置Hadoop环境变量:将Hadoop的bin目录添到系统的PATH环境变量中。 5. 配置Hadoop集群:编辑Hadoop的配置文件,包括core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml。 6. 格式化Hadoop文件系统:使用hadoop namenode -format命令格式化Hadoop文件系统。 7. 启动Hadoop集群:使用start-all.sh脚本启动Hadoop集群。 8. 测试Hadoop集群:使用Hadoop自带的例子程序测试Hadoop集群的运行情况。 以上是Ubuntu 20.04 Hadoop集群搭建的基本步骤,需要注意的是,在配置Hadoop集群时需要根据实际情况进行调整。 ### 回答2: Ubuntu20.04是我们常用的操作系统之一,搭建一个hadoop集群则是对数据处理效率的提升。下面分享我对Ubuntu20.04hadoop集群搭建的一些思路和方法。 1. 安装Ubuntu20.04系统 首先需要安装Ubuntu20.04操作系统,可通过官方网站进行下安装。安装完成后,需要进行系统更新和配置。 2. 安装Java环境 Hadoop是Java语言编写的,因此需要先安装Java环境。使用apt-get命令进行安装,如下所示: sudo apt-get update sudo apt-get install default-jdk 安装完成后,可通过java -version命令验证是否安装成功。 3. 安装Hadoop 从官网下最新版本的Hadoop,并解压至/home/username下,如下所示: tar -zxvf hadoop-x.x.x.tar.gz -C /home/username 配置hadoop-env.sh文件: cd /home/username/hadoop-x.x.x/etc/hadoop vi hadoop-env.sh 添以下内容: export JAVA_HOME=/usr/lib/jvm/default-java export HADOOP_HOME=/home/username/hadoop-x.x.x export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin 4. 配置hadoop集群 编辑core-site.xml文件: vi /home/username/hadoop-x.x.x/etc/hadoop/core-site.xml 添以下内容: <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> 编辑hdfs-site.xml文件: vi /home/username/hadoop-x.x.x/etc/hadoop/hdfs-site.xml 添以下内容: <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/home/username/hadoop-x.x.x/hdfs/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/username/hadoop-x.x.x/hdfs/datanode</value> </property> </configuration> 编辑mapred-site.xml文件: cp /home/username/hadoop-x.x.x/etc/hadoop/mapred-site.xml.template /home/username/hadoop-x.x.x/etc/hadoop/mapred-site.xml vi /home/username/hadoop-x.x.x/etc/hadoop/mapred-site.xml 添以下内容: <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> 编辑yarn-site.xml文件: vi /home/username/hadoop-x.x.x/etc/hadoop/yarn-site.xml 添以下内容: <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> 5. 启动hadoop集群 启动hadoop集群前,需要格式化namenode(第一次启动): hdfs namenode -format 启动hadoop集群: cd /home/username/hadoop-x.x.x/sbin ./start-all.sh 6. 测试hadoop集群 在本地上传文件至hdfs,如下所示: hdfs dfs -put /path/to/local/file /path/to/hdfs/directory 查看上传文件: hdfs dfs -ls /path/to/hdfs/directory 删除上传文件: hdfs dfs -rm /path/to/hdfs/file 以上为Ubuntu20.04hadoop集群搭建的大致流程。需要注意的是,在实际搭建过程中,可能会遇到各种问题,需要耐心查找和解决。希望以上分享能对大家有所帮助。 ### 回答3: Hadoop集群是一个用于分布式数据存储和管理的解决方案,它可以处理大型数据集并提供高可用性和容错性。为了搭建一个成功的Hadoop集群,必须熟悉并且正确的安装配置HadoopUbuntu20.04的环境。下面将会介绍如何在Ubuntu20.04上搭建一个三节点的Hadoop集群。 步骤1:安装Java JDK Java JDK是运行Hadoop所必需的软件包之一。在Ubuntu20.04上,可以通过以下命令来安装它: ``` $ sudo apt install openjdk-8-jdk ``` 步骤2:从Apache Hadoop官网下HadoopUbuntu20.04上,可以通过以下命令从Apache Hadoop官网上下Hadoop,并将其解压到指定目录中。 ``` $ wget https://archive.apache.org/dist/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz $ tar -xzvf hadoop-2.10.1.tar.gz $ sudo mv hadoop-2.10.1 /usr/local/hadoop ``` 步骤3:编辑Hadoop配置文件 在安装完Hadoop后,需要编辑三个Hadoop的配置文件,将其配置为集群模式。在这里,将hbase-site.xml和hadoop-env.sh视为修改配置文件的例子,修改hadoop-env.sh如下: ``` $ export HADOOP_HOME=/usr/local/hadoop $ export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop $ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ $ export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin ``` 修改hbase-site.xml: ``` <configuration> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/hadoop/tmp</value> <description>a base for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://Master:9000</value> <description>The name of the default file system. Either the literal string "local" or a host:port for HDFS.</description> </property> </configuration> ``` 步骤4:配置SSH免密登录 在Hadoop集群中,各个节点之间经常需要互相连接,因此需要配置SSH免密登录,以避免频繁输入密码。以下是如何配置SSH免密登录的步骤: ``` $ ssh-keygen -t rsa $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys $ chmod 600 ~/.ssh/authorized_keys ``` 此外,需要将密钥复制到所有其他的节点上,以实现节点之间的连接: ``` $ ssh-copy-id user@Host ``` 步骤5:启动Hadoop集群 在所有节点上都完成上述步骤后,即可通过以下命令来启动Hadoop集群: ``` $ start-dfs.sh $ start-yarn.sh ``` 分别启动HDFS和Yarn,这时应该可以在Web界面上看到正在运行的数据节点(Data Node)和节点管理器(Node Manager)。 对于Hadoop集群的搭建,还有很多需要掌握的知识和工具,例如Hadoop的日志、开启HA,在资源管理上的配置等,建议在实践Hadoop集群搭建时多尝试,并对不理解的概念和操作进行深入的学习。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值