Spark SQL将Hive表中的数据写入到MySQL数据库中

Scala 复制代码
import org.apache.spark.sql.SparkSession

object HiveToMySQL {
  def main(args: Array[String]): Unit = {
    // 创建SparkSession
    val spark = SparkSession.builder()
      .appName("HiveToMySQL")
      .enableHiveSupport()
      .getOrCreate()

    // 读取Hive表数据
    val hiveDF = spark.table("hive_table_name")

    // 写入MySQL表
    hiveDF.write
      .format("jdbc")
      .option("url", "jdbc:mysql://localhost:3306/database_name")
      .option("dbtable", "mysql_table_name")
      .option("user", "mysql_username")
      .option("password", "mysql_password")
      .save()
    
    // 关闭SparkSession
    spark.stop()
  }
}
  • "hive_table_name":Hive表的名称。
  • "jdbc:mysql://localhost:3306/database_name":MySQL数据库的连接URL,包括主机名、端口号和数据库名称。
  • "mysql_table_name":要写入的MySQL表的名称。
  • "mysql_username":MySQL数据库的用户名。
  • "mysql_password":MySQL数据库的密码。

确保替换这些参数后,运行代码即可将Hive表中的数据写入到MySQL表中。

相关推荐
91刘仁德1 分钟前
MySQL 数据库基础操作知识点整理
数据库·mysql·oracle
IvorySQL8 小时前
PG 日报|新增 VACUUM 全维度统计信息补丁迭代
数据库·人工智能·postgresql·ivorysql
白露与泡影10 小时前
Redis 缓存实战:雪崩、穿透、击穿一次讲透
数据库·redis·缓存
赵渝强老师11 小时前
【赵渝强老师】使用Oracle可传输的表空间迁移数据
数据库·oracle
Csvn12 小时前
Day 3:LIKE 与模式匹配 — 让查询学会"模糊搜索"
后端·sql
IpdataCloud12 小时前
跨区服玩家延迟高怎么办?用IP离线库自动分配到最近服务器
数据库·tcp/ip·github·php·ip
wuqingshun31415913 小时前
MYSQL默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql
空中湖14 小时前
电池简史(五):极限之梦与终章——锂硫、锂空气、量子电池,以及你该知道的电池投资与生活指南
数据库·程序人生
蓝胖子酱15 小时前
在 Electron 中用 electron-store 实现加密存储与自定义格式文件
前端·javascript·数据库
snow@li16 小时前
Redis:数据库语法速查表 / 全景梳理
数据库·redis·缓存