springboot 集成spark
时间: 2023-09-16 09:13:10 浏览: 138
要在Spring Boot应用程序中集成Spark,可以使用Spring和Spark的Java API。下面是一个简单的示例:
1. 添加Maven依赖
```
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.4.5</version>
</dependency>
```
2. 创建Spark配置类
```
@Configuration
public class SparkConfig {
@Bean
public SparkConf sparkConf() {
return new SparkConf()
.setAppName("spring-boot-spark")
.setMaster("local[*]"); // 这里设置为本地模式
}
@Bean
public JavaSparkContext javaSparkContext() {
return new JavaSparkContext(sparkConf());
}
}
```
3. 创建Spark服务类
```
@Service
public class SparkService {
@Autowired
private JavaSparkContext javaSparkContext;
public void process() {
List<Integer> data = Arrays.asList(1, 2, 3, 4, 5);
JavaRDD<Integer> rdd = javaSparkContext.parallelize(data);
int sum = rdd.reduce((a, b) -> a + b);
System.out.println("Sum: " + sum);
}
}
```
4. 在Controller中使用Spark服务
```
@RestController
public class SparkController {
@Autowired
private SparkService sparkService;
@GetMapping("/sum")
public String sum() {
sparkService.process();
return "Sum calculated.";
}
}
```
这样就可以在Spring Boot应用程序中使用Spark了。
阅读全文