微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SparkSql写数据到Mysql中

import org.apache.spark.sql.{SaveMode, SparkSession}
import org.apache.spark.sql.types.{FloatType, IntegerType, StringType, StructField, StructType}

object MysqLWrite {

  def main(args: Array[String]): Unit = {

    val spark = SparkSession.builder()
      .master("local[6]")
      .appName("MysqL write")
      .getorCreate()

      //定义表约束信息
    val schema = StructType(
      List(
        StructField("name", StringType),
        StructField("age", IntegerType),
        StructField("gpa", FloatType)
      )
    )

    //读取数据集 注意:使用csv读取 如果不是,分割 需要指定分隔符即可
    val readDF = spark.read.schema(schema).option("delimiter", "\t").csv("data/studenttab10k")

    import spark.implicits._

    //etl处理
    val resultDF = readDF.where('age < 30)

    //落地
    resultDF.write
        .format("jdbc")
        .mode(SaveMode.Overwrite)
        .option("url", "jdbc:MysqL://hadoop100:3306/spark_test")
        .option("dbtable", "student10k")
        .option("user", "root")
        .option("password", "root")
        .save()

    spark.stop()

  }

}
@H_502_6@

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐