2023_Spark_实验十六:编写LoggerLevel方法及getLocalSparkSession方法

一、搭建Spark项目结构

在SparkProject模块的pom.xml文件中增加一下依赖,并等待依赖包下载完毕,如上图。

​<!-- Spark及Scala的版本号 --><properties><scala.version>2.11</scala.version><spark.version>2.1.1</spark.version></properties><!-- Mysql组件<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.7.22.1</version></dependency> 的依赖 --><!-- Spark各个组件的依赖 --><dependencies><!-- https://mvnrepository.com/artifact/com.thoughtworks.paranamer/paranamer --><dependency><groupId>com.thoughtworks.paranamer</groupId><artifactId>paranamer</artifactId><version>2.8</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_${scala.version}</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_${scala.version}</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-streaming_2.11</artifactId><version>${spark.version}</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-mllib_2.11</artifactId><version>2.1.1</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-streaming-kafka-0-10_2.11</artifactId><version>2.3.0</version></dependency><dependency><groupId>org.apache.spark</groupId><artifactId>spark-streaming-kafka-0-8_${scala.version}</artifactId><version>2.3.0</version></dependency><dependency><groupId>net.jpountz.lz4</groupId><artifactId>lz4</artifactId><version>1.3.0</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.18</version></dependency><dependency><groupId>org.apache.flume.flume-ng-clients</groupId><artifactId>flume-ng-log4jappender</artifactId><version>1.7.0</version></dependency><!-- <dependency>--><!-- <groupId>org.apache.spark</groupId>--><!-- <artifactId>spark-streaming-flume-sink_2.10</artifactId>--><!-- <version>1.5.2</version>--><!-- </dependency>--><dependency><groupId>org.apache.spark</groupId><artifactId>spark-hive_2.12</artifactId><version>2.4.8</version></dependency></dependencies><!-- 配置maven打包插件及打包类型 --><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs></configuration></plugin></plugins></build>​

二、解决无法创建scala文件问题

三、编写LoggerLevel特质

在特质  下增加如下代码


Logger.getLogger("org").setLevel(Level.ERROR)

这个时候需要导包

完整代码如下:


 


import org.apache.log4j.{Level, Logger}trait LoggerLevel {Logger.getLogger("org").setLevel(Level.ERROR)}

四、编写getLocalSparkSession方法

以下是完整代码:


import org.apache.spark.sql.SparkSessionobject SparkUnit {/*** 一个class参数**/def getLocalSparkSession(appName: String): SparkSession = {SparkSession.builder().appName(appName).master("local[2]").getOrCreate()}def getLocalSparkSession(appName: String, support: Boolean): SparkSession = {if (support) SparkSession.builder().master("local[2]").appName(appName).enableHiveSupport().getOrCreate()else getLocalSparkSession(appName)}def getLocalSparkSession(appName: String, master: String): SparkSession = {SparkSession.builder().appName(appName).master(master).getOrCreate()}def getLocalSparkSession(appName: String, master: String, support: Boolean): SparkSession = {if (support) SparkSession.builder().appName(appName).master(master).enableHiveSupport().getOrCreate()else getLocalSparkSession(appName, master)}def stopSpark(ss: SparkSession) = {if (ss != null) {ss.stop()}}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/139336.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GPT绘制流程图咒语

【咒语】下面是我的一篇论文选取部分&#xff0c;为了让读者更好理解&#xff0c;我准备画一张图&#xff0c;请你阅读后为我设计一下这个图应该怎么画&#xff0c;更有说服力&#xff0c;更容易理解 论文片段&#xff1a; 多模态数据融合研究的基础在于有效的数据采集。首先&a…

进阶JAVA篇-如何理解作为参数使用的匿名内部类与 Arrays 类的常用API(九)

目录 目录 API 1.0 Arrays 类的说明 1.1 Arrays 类中的 toString() 静态方法 1.2 Arrays 类中的 copyOfRange(int[] original, int from, int to) 静态方法 1.3 Arrays 类中的 copyOf(int[] original, int newLength) 静态方法 1.4 Arrays 类中的 setAll(do…

旧手机热点机改造成服务器方案

如果你也跟我一样有这种想法, 那真的太酷了!!! ok,前提是得有root,不然体验大打折扣 目录 目录 1.做一个能爬墙能走百度直连的热点机(做热点机用) 2.做emby视频服务器 3.做文件服务, 存取文件 4.装青龙面板,跑一些定时任务 5.做远程摄像头监控 6.做web服务器 7.内网穿…

【Linux】文件IO基础知识——下篇

目录 一&#xff0c;stderr 2. errno全局变量 二&#xff0c;文件系统 1. 软链接 2. 硬链接 三&#xff0c;静态库 1. 制作静态库 2. 自动化生成静态库 & 自动发布库与头文件 3. 如何使用第三方库 法&#xff08;一&#xff09;&#xff1a;修改系统文件库 …

【milkv】更新rndis驱动

问题 由于windows升级到了11&#xff0c;导致rndis驱动无法识别到。 解决 打开设备管理器&#xff0c;查看网络适配器&#xff0c;没有更新会显示黄色的图标。 右击选择更新驱动

10种新型网络安全威胁和攻击手法

2023年&#xff0c;网络威胁领域呈现出一些新的发展趋势&#xff0c;攻击类型趋于多样化&#xff0c;例如&#xff1a;从MOVEit攻击可以看出勒索攻击者开始抛弃基于加密的勒索软件&#xff0c;转向窃取数据进行勒索&#xff1b;同时&#xff0c;攻击者们还减少了对传统恶意软件…

【小白专用】安装Apache2.4+ 安装PHP8.2+ php与sql server 2008 r2连接测试教程

PHP安装 1、PHP下载 PHP For Windows: Binaries and sources Releases 注意&#xff1a; 1.要下载Thread Safe&#xff0c;否则没有php7apache2_4.dll这个文件 2.如果是64位系统要下载x64的&#xff0c;x86的不行 3.下载Zip 2、PHP解压安装 将Zip进行解压&#xff0c;里…

关于罗克韦尔跟西门子PLC之间通讯的解决方案

不同品牌的PLC设备之间通讯一般是通过总线模块&#xff0c;或者直接在PLC内编程实现&#xff0c;这样不仅硬件成本高&#xff0c;而且开发调试的时间都很长&#xff0c;后期维护也相当麻烦。本文采用IGT-DSER智能网关模块&#xff0c;PLC内不用编程&#xff0c;通过PLC现有的以…

windows中elasticsearch7中添加用户名密码验证

1.找到elsatic的bin目录输入cmd 2.生成ca证书 输入 elasticsearch-certutil ca 在es7根目录生成ca证书&#xff0c;输入密码时直接回车即可&#xff0c;否则后面会报错 Please enter the desired output file [elastic-stack-ca.p12]: #这里直接回车即可 Enter password for…

应用在红外线遥控领域中的心率传感信号接收芯片

红外遥控是一种无线、非接触控制技术&#xff0c;具有抗干扰能力强&#xff0c;信息传输可靠&#xff0c;功耗低&#xff0c;成本低&#xff0c;易实现等显著优点&#xff0c;被诸多电子设备特别是家用电器广泛采用&#xff0c;并越来越多的应用到计算机和手机系统中。 红外线…

Vue底层监测数据变化的原理

&#x1f331;前言 &#x1f331; 最近在学习前端&#xff0c;学习Vue框架&#xff0c;学习路线是视频&#xff0b;官方文档&#xff0c;视频看的是b站尚硅谷张天禹老师讲的&#xff0c;我去&#xff0c;讲的是太TM好了&#xff01;&#xff01;&#xff01;不管是前端还是后端…

全自动打包机检测不到货物怎么办?

全自动打包机也称无人化打包机或无人化捆扎机&#xff0c;是指在工作的过程中不需要人工干预&#xff0c;机器可以自动检测、自动输送、自动打包的设备。但最近有一些客户反映打包机不能自己检测到货物了。这是为什么呢&#xff1f; 1、电子眼感应太弱。电子眼的感应程度是可以…