美文网首页
Spark-shell批量命令执行脚本

Spark-shell批量命令执行脚本

作者: 达微 | 来源:发表于2019-09-29 20:58 被阅读0次
#!/bin/bash

source /etc/profile

exec $SPARK_HOME/bin/spark-shell --queue tv  --name spark-sql-test --executor-cores 8 --executor-memory 8g   --num-executors 8 --conf spark.cleaner.ttl=240000 <<!EOF
import org.apache.spark.sql.SaveMode
sql("set hive.exec.dynamic.partition=true")
sql("set hive.exec.dynamic.partition.mode=nonstrict")
sql("use hr")
sql("SELECT * FROM t_abc ").rdd.saveAsTextFile("/tmp/out") 
sql("SELECT * FROM t_abc").rdd.map(_.toString).intersection(sc.textFile("/user/hdfs/t2_abc").map(_.toString).distinct).count
!EOF

记一次坑比操作,存redis的中间状态用了kyro虚拟化后,查看不方便

#!/bin/bash

source /etc/profile

exec $SPARK_HOME/bin/spark-shell spark-shell --jars $(echo /opt/hsvehicle/DataMiningAnalysis-1.0-hs/target/jars/*.jar /opt/hsvehicle/DataMiningAnalysis-1.0-hs/target/DataMiningAnalysis-1.0-hs.jar | tr ' ' ',') <<!EOF

import java.util
import java.util.concurrent.ConcurrentHashMap
import com.dfssi.common.json.Jsons
import com.dfssi.dataplatform.analysis.hs.battery.{BatteryAlarmResult, BatteryCheckStatusRecord}
import com.dfssi.dataplatform.analysis.hs.monitor.HSVehicleAlarmFromKafka
import com.dfssi.dataplatform.analysis.spark.SparkKryoSerializerAdapter
import io.netty.buffer.Unpooled
import org.apache.spark.SparkConf
import org.joda.time.DateTime
import redis.clients.jedis.exceptions.JedisConnectionException
import redis.clients.jedis.{Jedis, JedisPoolConfig, JedisSentinelPool, Protocol}
import com.dfssi.dataplatform.analysis.redis._
import sun.misc.IOUtils
import com.dfssi.dataplatform.analysis.redis.SentinelConnectionPool
import com.dfssi.dataplatform.analysis.redis.SentinelConnectionPool._
import scala.collection.JavaConversions._

val redisEndpoint = SentinelRedisEndpoint("192.168.1.13:26379,192.168.1.4:26379", "mymaster", "123456", 2, 2000)
val jedis = redisEndpoint.connect()
val redis = ByteBufferRedis(jedis)

val buffer = redis.get("hs:alarm:JA123456")
val kafka = new HSVehicleAlarmFromKafka()
val adapter = SparkKryoSerializerAdapter(new SparkConf())
val record:kafka.AlarmCheckStatusRecord = adapter.deserialize(buffer)
println(record)
!EOF

相关文章

  • Spark-shell批量命令执行脚本

    记一次坑比操作,存redis的中间状态用了kyro虚拟化后,查看不方便

  • Airtest 执行脚本(批量)

    命令行执行单个脚本 1、打开命令提示符 2、进入脚本路径 批量顺序执行多个脚本 1、新建txt文件 注:需要在脚本...

  • 批量杀死进程

    工作中,经常会需要批量杀死进程。例如: 启动启动了多个python脚本 批量杀死执行test.py进程:执行命令p...

  • shell-常用脚本

    循环校验文件是否存在,存在时继续执行 spark-submit 脚本 spark-shell REPL启动脚本

  • Jenkins批量删除job的构建历史记录

    Jenkins-系统管理-脚本命令行,通过执行以下脚本进行批量删除job的构建历史记录

  • shell脚本实现FTP上传下载

    下载单个文件脚本代码 上传单个文件脚本代码 批量下载脚本代码 批量上传脚本代码 命令解释 登录FTP << 是使用...

  • redis调用lua说明文档

    redis调用lua脚本 在实际开发中,可以通过pipeline将多个命令批量传输给redis执行,减少网络开销;...

  • Jenkins批量停止队列中卡主的jobs

    Jenkins中如何批量停止队列中卡主的jobs? 一、Jenkins-系统管理-脚本命令行,通过执行以下脚本进行...

  • Spark配置加载过程

    程序提交或者spark-shell 执行后相关配置的加载过程为: 1、首先执行环境配置脚本spark-evn.c...

  • week12-ansible 常用模块

    ① command 模块 【批量管理主机执行命令 (默认)】 command模块官方资料说明 批量执行一条命令 去...

网友评论

      本文标题:Spark-shell批量命令执行脚本

      本文链接:https://www.haomeiwen.com/subject/wgniuctx.html