当前位置: 首页 > article >正文

springboot远程链接spark

springboot远程链接spark

1、导入依赖
  • <!--        spark依赖-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-core_2.12</artifactId>
                <version>3.2.2</version>
            </dependency>
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-sql_2.12</artifactId>
                <version>3.2.2</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-mllib -->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-mllib_2.12</artifactId>
                <version>3.2.2</version>
            </dependency>
    
2、配置spark信息
  • 建立一个配置文件,配置spark信息

    • import org.apache.spark.SparkConf;
      import org.apache.spark.sql.SparkSession;
      import org.springframework.beans.factory.annotation.Value;
      import org.springframework.context.annotation.Bean;
      import org.springframework.context.annotation.Configuration;
      
      //将文件交于spring管理
      @Configuration
      public class SparkConfig {
      
          //使用yml中的配置
          @Value("${spark.master}")
          private String sparkMaster;
      
          @Value("${spark.appName}")
          private String sparkAppName;
          @Bean
          public SparkConf sparkConf() {
              SparkConf conf = new SparkConf();
              conf.setMaster(sparkMaster);
              conf.setAppName(sparkAppName);
              return conf;
          }
      
          @Bean
          public SparkSession sparkSession() {
              return SparkSession.builder()
                      .config(sparkConf())
                      .getOrCreate();
          }
      }
      
3、controller和service
  • controller类

    • import org.springframework.beans.factory.annotation.Autowired;
      import org.springframework.web.bind.annotation.GetMapping;
      import org.springframework.web.bind.annotation.RequestMapping;
      import org.springframework.web.bind.annotation.RestController;
      import xyz.zzj.traffic_main_code.service.SparkService;
      
      @RestController
      @RequestMapping("/spark")
      public class SparkController {
      
          @Autowired
          private SparkService sparkService;
      
          @GetMapping("/run")
          public String runSparkJob() {
              sparkService.executeSparkJob();
              return "Spark job executed successfully!";
          }
      }
      
  • service

    • import org.springframework.stereotype.Service;
      
      @Service
      public class SparkService {
      
          public void executeSparkJob() {
              System.out.println("Spark job started");
          }
      }
      
4、运行
  • 运行完后,打开浏览器
    • http://localhost:8080/spark/run
  • 观察spark认为
    • http://192.168.44.128:8099/

http://www.kler.cn/a/473391.html

相关文章:

  • 《繁星路》V1.8.3(Build16632266)官方中文学习版
  • 如何在 Ubuntu 22.04 上安装 Cassandra NoSQL 数据库教程
  • 单片机实现模式转换
  • vulnhub靶场【DC系列】之7
  • Jenkins内修改allure报告名称
  • 如何在 Windows 10/11 上录制带有音频的屏幕 [3 种简单方法]
  • 力扣 34. 在排序数组中查找元素的第一个和最后一个位置
  • SpringBoot3动态切换数据源
  • 基于springboot的网上商城购物系统
  • 2025.1.8(c++对c语言的扩充——堆区空间,引用,函数)
  • Mysql面试相关
  • 使用 vue3 赋值后视图没变化的问题
  • 蓝桥杯训练
  • T-SQL语言的语法
  • 使用 SQLite3 的基本操作步骤
  • Azkaban其一,介绍、体系架构和安装
  • Linux-----结构体与联合体,大小端模式
  • 高等数学学习笔记 ☞ 函数的求导法则
  • Maven核心与单元测试
  • Linux-Ubuntu之I2C通信
  • iOS 逆向学习 - iOS Architecture Media Layer
  • Ubuntu 上安装 Docker
  • Kotlin OpenCV 画画
  • QPS和TPS 的区别是什么?QPS 大了会有什么问题,怎么解决?
  • Java基础概念
  • EasyExcel上传校验文件错误信息放到文件里以Base64 返回给前端