栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Spark SQL 操作外部数据源之mysql

Spark SQL 操作外部数据源之mysql

使用idea操作,需要导入依赖包mysql-connector-java-5.1.25.jar

import java.util.Properties

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

object SparkToMysql {
  def main(args: Array[String]): Unit = {
//创建SparkSession对象
    val spark = SparkSession.builder().appName("sparktohive")
      .master("local[*]").getOrCreate()
//获取数据库连接,LinuxIp指的是你的虚拟机ip,3306是端口号,并指定某个库
    val url="jdbc:mysql://LinuxIP:3306/mybatisdb"
//获取mysql驱动
    val driver="com.mysql.jdbc.Driver"
//用户名
    val user="****"
//密码
    val pwd="****"
//编写配置文件
    val properties=new Properties()
    properties.setProperty("user",user)
    properties.setProperty("password",pwd)
    properties.setProperty("driver",driver)
//获得一个dateframe,通过操作dateframe来操作表
    val tblsDF: Dataframe = spark.read.jdbc(url,"student",properties)
    tblsDF.show()
    import org.apache.spark.sql.functions._
//利用算子进行计算
    val frame: Dataframe = tblsDF.agg(
      max("age").as("maxage"),
    min("age").as("minage"),
      avg("age").as("avgage")
    )
    frame.show()
//可以将计算得来的新表再次写入到你的mysql数据库中,其中mode方法中的SavaMode.Overwrite可以覆盖原来的表
   // frame.write.mode(SaveMode.Overwrite).jdbc(url,"maxage",properties)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/654087.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号