【问题标题】:spark-submit - could not parse master urlspark-submit - 无法解析主 url
【发布时间】:2019-03-13 16:48:37
【问题描述】:

在 Windows 10 机器上使用 spark-submit 执行 spark 作业时出现错误。命令是:

c:\workspaces\Spark2Demo>spark-submit --class retail_db.GetRevenuePerOrder  --master local .\target\scala-2.12\spark2demo_2.12-0.1.jar c:\workspaces\data\retail_db\orders\part-00000 c:\workspaces\output

我得到的错误是:

2019-03-12 19:09:33 ERROR SparkContext:91 - Error initializing SparkContext.
org.apache.spark.SparkException: Could not parse Master URL: 'c:\workspaces\data\retail_db\orders\part-00000'
        at org.apache.spark.SparkContext$.org$apache$spark$SparkContext$$createTaskScheduler(SparkContext.scala:2784)
        at org.apache.spark.SparkContext.<init>(SparkContext.scala:493)
        at retail_db.GetRevenuePerOrder$.main(GetRevenuePerOrder.scala:7)
        at retail_db.GetRevenuePerOrder.main(GetRevenuePerOrder.scala)

文件存在并且可以访问。我能够在 IDE 中运行该程序。以下是程序:

package retail_db
import org.apache.spark.{SparkConf,SparkContext}

object GetRevenuePerOrder {
  def main(args:Array[String]):Unit = {
    val conf = new SparkConf().setMaster(args(0)).setAppName("GetRevenuePerOrder")
    val sc = new SparkContext(conf)
    sc.setLogLevel("DEBUG")
    println(args)
    val orderItems = sc.textFile(args(1))
    val revenuePerOrder = orderItems.map(oi => (oi.split(",")(1).toInt, oi.split(",")(4).toFloat)).reduceByKey(_ + _).map(oi => (oi._1 + "," + oi._2))
    revenuePerOrder.saveAsTextFile(args(2))
  }
}

请帮忙。

【问题讨论】:

  • master-url 不是文件,而是主资源管理器的 url(用于分布式系统)。 spark.apache.org/docs/latest/…
  • 为什么执行时抱怨主 url 无效。我已将主人作为本地人。
  • val conf = new SparkConf().setMaster(args(0))。在这里,您正在重置主 url。
  • 谢谢阿普尔巴。这解决了这个问题。请将此添加为答案,以便我接受。

标签: apache-spark


【解决方案1】:

你设置了 Master 两次。第一次在 spark-submit 命令 (--master local) 中,您将其设置为本地,第二次在 SparkConf (new SparkConf().setMaster(args(0))) 中。正如spark configuration page 中提到的,“直接在 SparkConf 上设置的属性具有最高优先级,然后将标志传递给 spark-submit 或 spark-shell,然后是 spark-defaults.conf 文件中的选项”,由 spark 设置的本地主机-submit,被 SparkConf 参数覆盖。请删除第二部分。

【讨论】:

    猜你喜欢
    • 2017-07-27
    • 2015-01-30
    • 2021-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多