【问题标题】:How can I change SparkContext.sparkUser() setting (in pyspark)?如何更改 SparkContext.sparkUser() 设置(在 pyspark 中)?
【发布时间】:2015-12-27 22:17:26
【问题描述】:

我是 Sparkpyspark 的新手。
我使用 pyspark,在我的rdd 处理之后,我尝试使用saveAsTextfile() 函数将其保存到hdfs。 但我收到“permission denied”错误消息,因为 pyspark 尝试写入 hdfs 使用我的本地帐户“kjlee”,该帐户在 hdfs 系统上不存在。

我可以通过SparkContext().sparkUser()查看spark用户名,但是我找不到如何更改spark用户名。

如何更改 spark 用户名?

【问题讨论】:

  • 格式和正确的英文。

标签: scala apache-spark pyspark


【解决方案1】:

为此有一个环境变量:HADOOP_USER_NAME 所以只需使用export HADOOP_USER_NAME=anyuser 或在pyspark 中你可以使用os.environ["HADOOP_USER_NAME"] = "anyuser"

【讨论】:

  • 我注意到有时您需要在 bash 中通过 export HADOOP_USER_NAME=anyuser 进行设置。
【解决方案2】:

在 Scala 中可以使用 System.setProperty 来完成:

  System.setProperty("HADOOP_USER_NAME","newUserName")

  val spark = SparkSession
    .builder()
    .appName("SparkSessionApp")
    .master("local[*]")
    .getOrCreate()

  println(spark.sparkContext.sparkUser)

【讨论】:

    猜你喜欢
    • 2016-10-31
    • 2020-06-27
    • 1970-01-01
    • 1970-01-01
    • 2017-08-16
    • 2019-11-30
    • 2019-12-25
    • 2012-11-14
    • 1970-01-01
    相关资源
    最近更新 更多