【问题标题】:How to deploy Spark Streaming application?如何部署 Spark Streaming 应用程序?
【发布时间】:2017-04-02 08:42:30
【问题描述】:

我需要在 Linux 服务器上部署一个 Spark Streaming 应用程序。

谁能提供如何部署的步骤以及部署前需要修改哪些代码?

class JavaKafkaWordCount11 {
    public static void main(String[] args) {
        StreamingExamples.setStreamingLogLevels();

        SparkConf sparkConf = new SparkConf()
                .setAppName("JavaKafkaWordCount11")
                .setMaster("local[*]");
        sparkConf.set("spark.streaming.concurrentJobs", "20");

        JavaStreamingContext jssc = new JavaStreamingContext(sparkConf, new Duration(1500));

        Map<String, Integer> topicMap = new HashMap<>();
        topicMap.put("TopicQueue", 20);
        JavaPairReceiverInputDStream<String, String> messages =
                KafkaUtils.createStream(jssc, "x.xx.xxx.xxx:2181", "1", topicMap);
        JavaDStream<String> lines = messages.map(new Function<Tuple2<String, String>, String>() {
            @Override
            public String call(Tuple2<String, String> tuple2) {
                return tuple2._2();
            }
        });
        lines.foreachRDD(rdd -> {
            if (rdd.count() > 0) {
                List<String> strArray = rdd.collect();
                getProcessResult(strArray);
            }
        });
    }
}

【问题讨论】:

    标签: java apache-spark apache-kafka


    【解决方案1】:

    步骤如下:

    1. 阅读Quick Start

    是的,只需一个步骤即可归结为:

    1. sbt package 假设您使用 sbt,但对于 Java 可能是 gradlemaven。这只是说您必须打包您的 Spark 应用程序,以便它可以部署。

    2. spark-submit 打包的 Spark 应用程序。

    您可以选择启动您的集群(例如 Spark Standalone、Apache Mesos 或 Hadoop YARN),但实际上并不需要它,因为 spark-submit 默认假定为 local[*]

    附言您正在使用 Apache Kafka,因此您也必须启动并运行它(x.xx.xxx.xxx:2181)。

    【讨论】:

      【解决方案2】:

      您可以通过 Spark-submit.like this.. 提交您的工作,

      ./spark-submit --class packagename.classname [--jars path to any external jars] --master local[4] "Your jar file path"
      

      如需任何参考,请点击此链接:

      Spark-submit

      谢谢。

      【讨论】:

        猜你喜欢
        • 2013-11-16
        • 1970-01-01
        • 1970-01-01
        • 2015-05-17
        • 2017-08-16
        • 2016-06-12
        • 1970-01-01
        • 2022-06-10
        • 1970-01-01
        相关资源
        最近更新 更多