SparkSQL开发工具类

本文主要总结了SparkSQL在开发过程中常用的工具类,包括数据读写、查询优化及性能提升等方面的关键功能,旨在帮助开发者更高效地利用SparkSQL进行大数据处理。

SparkSQL开发工具类总结

 


import java.text.SimpleDateFormat
import java.util.{Calendar, Date, Properties}

import org.apache.spark.sql.{DataFrame, SaveMode, SparkSession}


object SparkUtil {
  /**
    * 获取sparkSession
    *
    * @return
    */
  def getSparkSession: SparkSession = {
    val sparkSession = SparkSession.builder().master("yarn").getOrCreate()
    sparkSession
  }

  /**
    * 从Mysql中读表并创建临时表
    *
    * @param sparkSession
    * @param table
    */
  def readFromMysql(sparkSession: SparkSession, table: String): DataFrame = {
    val username = getProperty("/jdbc.properties", "jdbc.username")
    val password = getProperty("/jdbc.properties", "jdbc.password")
    val url = getProperty("/jdbc.properties", "jdbc.url")
    val properties = new Properties()

    properties.setProperty("user", username)
    properties.setProperty("password", password)
    sparkSession.read.jdbc(url, table, properties)
  }

  /**
    * @param sparkSession
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值