我的设置:
spark版本3.1.2
hadoop 3.2版本(为apache hadoop 3.2及更高版本预构建)
scala version 2.12.10
java version 1.8
安装ApacheSpark归档文件到C:UsersanimeApacheSpark Spark .
SPARK_HOME C:Usersanime ApacheSpark 火花
HADOOP_HOME C:Usersanime ApacheSpark hadoop
从这里复制Hadoop.dll和winutils.exe到%HADOOP_HOME%/bin
我从命令行开始运行以下几行代码作为示例C:Usersanime ApacheSpark
val textFile = sc.textFile("spark/README.md")
val tokens = textFile.flatMap(l=>l.split(" "))
val cp = tokens.map(word=>(word, 1))
val counts = cp.reduceByKey((a, n)=>a+n)
val sortedCounts = counts.sortBy(kvpair=>kvpair._2, false)
sortedCounts.saveAsTextFile("NewFolder")
我得到一个很长的错误日志
ERROR SparkHadoopWriter: Aborting job job_202107261357425367869624572589035_0010。java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO Windows.access0美元(Ljava/lang/String; I) Z . .
我尝试过的事情:
- 将hadoop.dll拷贝到C:WindowsSystem32
- 运行winutils.exe chmod 777新文件夹如下
谁能帮助我得到我的第一个例子工作?多谢。
我刚刚遇到了同样的问题。仔细检查你的环境变量和winutils版本。
文档
HADOOP_HOME=<your local hadoop-ver folder>
PATH=%PATH%;%HADOOP_HOME%bin