如何更改 SparkContext.sparkUser() 设置(在 pyspark 中)?
How can I change SparkContext.sparkUser() setting (in pyspark)?
我是 Spark
和 pyspark
的新手。
我使用 pyspark,在我的 rdd
处理之后,我尝试使用 saveAsTextfile()
函数将它保存到 hdfs
。
但是我收到一条“permission denied”错误消息,因为 pyspark 试图写入 hdfs
使用我的本地帐户 'kjlee',它在 hdfs
系统上不存在。
我可以通过SparkContext().sparkUser()
查看spark用户名,但是我找不到如何更改spark用户名。
如何更改spark用户名?
这里有一个环境变量:HADOOP_USER_NAME
所以只需使用 export HADOOP_USER_NAME=anyuser
或者在 pyspark 中你可以使用 os.environ["HADOOP_USER_NAME"] = "anyuser"
在 Scala 中可以用 System.setProperty:
System.setProperty("HADOOP_USER_NAME","newUserName")
val spark = SparkSession
.builder()
.appName("SparkSessionApp")
.master("local[*]")
.getOrCreate()
println(spark.sparkContext.sparkUser)
我是 Spark
和 pyspark
的新手。
我使用 pyspark,在我的 rdd
处理之后,我尝试使用 saveAsTextfile()
函数将它保存到 hdfs
。
但是我收到一条“permission denied”错误消息,因为 pyspark 试图写入 hdfs
使用我的本地帐户 'kjlee',它在 hdfs
系统上不存在。
我可以通过SparkContext().sparkUser()
查看spark用户名,但是我找不到如何更改spark用户名。
如何更改spark用户名?
这里有一个环境变量:HADOOP_USER_NAME
所以只需使用 export HADOOP_USER_NAME=anyuser
或者在 pyspark 中你可以使用 os.environ["HADOOP_USER_NAME"] = "anyuser"
在 Scala 中可以用 System.setProperty:
System.setProperty("HADOOP_USER_NAME","newUserName")
val spark = SparkSession
.builder()
.appName("SparkSessionApp")
.master("local[*]")
.getOrCreate()
println(spark.sparkContext.sparkUser)