Spark从HDFS读取数据并转存MySQL

该博客介绍了如何使用Spark从HDFS中读取数据,进行简单的处理,然后将结果存入MySQL数据库。通过spark-submit命令提交作业,但未详细指定资源分配。
摘要由CSDN通过智能技术生成

Spark从HDFS读入数据,简单处理并存入MySQL

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

/**
  * Created by admin_ on 27/03/2018.
  * 1. 创建sparkSession
  * 2. 获取sparkContext
  * 3. 读取HDFS数据文件
  * 4. map以\t分隔字段
  * 5. map将字段转为case class的属性
  * 6. 隐式转换为DataFrame
  * 7. DF创建temp view
  * 8. 准备sparkSession.sql查询
  * 9. 执行查询并将结果写入jdbc数据库
  */

case class Elec(id:Int, time:BigInt, value:Int)

object SparkSQLTest01 {
  def main(args: Array[String]) {
    val spark = SparkSession
      .builder()
      .appName("SparkSQLTest01")
      .getOrCreate()

    import spark.implicits._

    val elecDF = spark.sparkContext
      .textFile("hdfs://xxxxxxxx:8020/2015-01-01.dat")
      .map(_.split("\t"))
      .map(attr => Elec(attr(0).trim.toInt, attr(1).trim.toInt, attr(2).trim.toInt))
      .toDF()

    elecDF.createOrReplaceTempView("elec")

    val distinctDF = spark.sql("select max(value) from
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值