私は最近apache sparkを試しています。私の質問は、スパークジョブをトリガーするためのより具体的なものです。ここで、spark ジョブの理解に関する質問を投稿しました。仕事で汚れた後、私は自分の要件に移りました。
APIを公開してジョブをトリガーするRESTエンドポイントがあり、Rest実装にはSpring4.0を使用しました。ここで、Spring でジョブをサービスとして実装し、ジョブをプログラムで送信することを考えました。つまり、エンドポイントがトリガーされたときに、特定のパラメーターを使用してジョブをトリガーします。現在、デザインの選択肢はほとんどありません。
以下に記述されたジョブと同様に、Abstract Class may be によって呼び出されるいくつかのジョブを維持する必要があります
JobScheduler
。/*Can this Code be abstracted from the application and written as as a seperate job. Because my understanding is that the Application code itself has to have the addJars embedded which internally sparkContext takes care.*/ SparkConf sparkConf = new SparkConf().setAppName("MyApp").setJars( new String[] { "/path/to/jar/submit/cluster" }) .setMaster("/url/of/master/node"); sparkConf.setSparkHome("/path/to/spark/"); sparkConf.set("spark.scheduler.mode", "FAIR"); JavaSparkContext sc = new JavaSparkContext(sparkConf); sc.setLocalProperty("spark.scheduler.pool", "test"); // Application with Algorithm , transformations
上記の点を拡張すると、サービスによって処理されるジョブの複数のバージョンがあります。
または、Spark Job Server を使用してこれを行います。
まず、この場合、実行に関してもスケーリングに関しても、何が最善の解決策であるかを知りたいと思います。
注: Spark のスタンドアロン クラスターを使用しています。親切に助けてください。