赞
踩
Spark安装和编程实践(Spark3.4.0)_厦大数据库实验室博客 (xmu.edu.cn)
按照文章中的步骤安装即可
遇到问题:xshell以及xftp不能使用
解决办法:
在linux使用镜像网站进行下载:wget https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-3.5.1/spark-3.5.1-bin-without-hadoop.tgz
同样在Linux中使用wget下载sbt安装文件sbt-1.9.0.tgz:
wget https://github.com/sbt/sbt/releases/download/v1.9.0/sbt-1.9.0.tgz
注意:由于sbt没有国内镜像,下载较慢(大概两个小时)
读取HDFS系统文件“/user/hadoop/test.txt”(如果该文件不存在,请先创建)
hadoop fs -put
命令上传本地文件 1).首先,你需要有一个本地文件,假设你有一个名为 local_test.txt
的本地文件,其中包含你想要写入 HDFS 的内容。
2).使用以下命令将本地文件上传到 HDFS:
如果你是集群,需要打开所有几点,再启动hadoop,否则报错(处于安全模式)
hadoop fs -put /path/to/local_test.txt /user/data/test.txt
将 /path/to/local_test.txt
替换为你的本地文件的实际路径。
1).使用 hadoop fs -cat
命令直接在 HDFS 上创建文件并写入内容:
hadoop fs -cat > /user/data/test.txt
这将创建一个名为 test.txt
的空文件。
2).现在你可以写入内容到这个文件中。输入你想要写入的内容,然后按 Ctrl+D
结束输入。
This is the content of the test.txt file.
3).按 Ctrl+D
结束输入后,test.txt
文件将包含你刚刚输入的内容。
请注意,这些命令需要在 Hadoop 集群的节点上运行,或者你需要通过 SSH 登录到集群中的一个节点。如果你的 Hadoop 集群配置了 Web 界面(如 Hue 或 Ambari),你也可以通过 Web 界面来上传文件和查看文件内容。
/usr/local/sbt/sbt package
注意:这一步要保证你的Linux系统中所有文件夹名称为英文
相关代码:
- /* SimpleApp.scala */
- import org.apache.hadoop.fs.{FileSystem, Path}
- import org.apache.hadoop.conf.Configuration
-
- object SimpleApp {
- def main(args: Array[String]): Unit = {
- val conf = new Configuration()
- val fs = FileSystem.get(conf)
- val path = new Path("/user/data/test.txt")
- val isExists = fs.exists(path)
-
- if (!isExists) {
-
- val outputStream = fs.create(path)
- outputStream.close()
- }
-
- val inputStream = fs.open(path)
- val lineCount = scala.io.Source.fromInputStream(inputStream).getLines().size
- println(s"File line count: $lineCount")
- inputStream.close()
- }
- }
注意:上述代码中的val path = new Path("/user/data/test.txt"),要替换为你的test.txt的路径
- name := "Simple Project"
- version := "1.0"
- scalaVersion := "2.12.18"
- libraryDependencies += "org.apache.hadoop" % "hadoop-client" % "2.10.1"
注意:你的scala和hadoop版本要与代码中的相同
教程给的指令缺少文件编码格式,需要指定编码格式,以下为修改后的指令
/usr/local/spark-3.5.1/bin/spark-submit --class "SimpleApp" --driver-java-options "-Dfile.encoding=UTF-8" ~/sparkapp/target/scala-2.12/simple-project_2.12-1.0.jar
/usr/local/spark-3.5.1/bin/spark-submit --class "SimpleApp" --driver-java-options "-Dfile.encoding=UTF-8" ~/sparkapp/target/scala-2.12/simple-project_2.12-1.0.jar 2>&1 | grep "Lines with a:"
注意:需要更改你的spark安装路径
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。