相关疑难解决方法(0)

如何使用单个spark上下文在Apache Spark中运行并发作业(操作)


它在Apache Spark文档中说" 在每个Spark应用程序中,多个"作业"(Spark动作)如果由不同的线程提交,可能会同时运行 ".有人可以解释如何实现以下示例代码的并发性吗?

    SparkConf conf = new SparkConf().setAppName("Simple_App");
    JavaSparkContext sc = new JavaSparkContext(conf);

    JavaRDD<String> file1 = sc.textFile("/path/to/test_doc1");
    JavaRDD<String> file2 = sc.textFile("/path/to/test_doc2");

    System.out.println(file1.count());
    System.out.println(file2.count());
Run Code Online (Sandbox Code Playgroud)

这两个工作是独立的,必须同时运行.
谢谢.

java concurrency apache-spark

19
推荐指数
1
解决办法
2万
查看次数

从多线程驱动程序启动Apache Spark SQL作业

我想使用Spark从约1500个远程Oracle表中提取数据,并且我想要一个多线程应用程序,该应用程序每个线程选择一个表,或者每个线程选择10个表,并启动一个Spark作业以从各自的表中读取数据。

从官方Spark网站https://spark.apache.org/docs/latest/job-scheduling.html来看,很明显它可以工作...

...运行Spark的集群管理器为跨应用程序调度提供了便利。其次,在每个Spark应用程序中,如果多个“作业”(Spark操作)是由不同的线程提交的,则它们可能同时运行。如果您的应用程序通过网络处理请求,则这很常见。Spark包含一个公平的调度程序,用于调度每个SparkContext中的资源。

但是,您可能已经在Spark中的此类SO 并发作业执行中注意到,该相似问题没有被接受的答案,而最受支持的答案始于

这实际上不是Spark的精神

  1. 每个人都知道这不是Spark的“精神”
  2. 谁在乎Spark的精神是什么?这实际上没有任何意义

有人以前有这样的东西可以工作吗?你有什么特别的事吗?在我浪费大量工作时间进行原型设计之前,只想提供一些建议。我真的很感谢任何帮助!

java multithreading scala apache-spark apache-spark-2.0

2
推荐指数
2
解决办法
2307
查看次数