DolphinScheduler+Spark 任务
1、Java Spark 程序准备
假设你的 WordCount 程序如下:
public static void main(String[] args) {
SparkConf conf = new SparkConf().setAppName("SparkWordCount");
// 本地运行用,提交到 DS 会自动覆盖
if (!conf.contains("spark.master")) {
conf.setMaster("local[*]");
}
JavaSparkContext sc = new JavaSparkContext(conf);
List<String> data = Arrays.asList(
"hello spark",
"hello dolphin",
"spark dolphin"
);
JavaRDD<String> lines = sc.parallelize(data);
JavaRDD<String> words = lines.flatMap(line -> Arrays.asList(line.split(" ")).iterator());
JavaPairRDD<String,Integer> counts = words.mapToPair(word -> new Tuple2<>(word,1))
.reduceByKey(Integer::sum);
counts.collect().forEach(System.out::println);
sc.close();
}
2、打包 Jar
使用 Maven 打包:
mvn clean package
生成的 jar 在 target/ 下,例如 spark-wordcount-1.0.jar
3、DolphinScheduler 上传资源
-
登录 DS Web UI → 资源管理
-
上传打好的 jar 文件
4、创建 Spark 任务
-
工作流 → 新建任务 → 选择 Spark 组件
-
基本配置:
-
-
程序类型:Java
-
-
Main class:Java main 类全路径,
-
例如:com.example.SparkWordCount
- 选择spark环境
- 部署类型,单机版选择local
5、运行与验证
-
点击 立即运行 → 查看日志
-
日志里应该能看到程序输出,例如:
(spark,2)
(dolphin,2)
6、spark 环境配置:
export SPARK_HOME=/opt/dolphinscheduler/soft/spark
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PYTHON_LAUNCHER=/usr/bin/python3
export PATH=$FLINK_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$DATAX_LAUNCHER:$PATH
浙公网安备 33010602011771号