讲sparksql数据保存到mysql数据库中
时间: 2023-12-01 08:26:37 浏览: 93
java实现Excel数据导入到mysql数据库.zip
5星 · 资源好评率100%
将 Spark SQL 的结果数据保存到 MySQL 数据库中可以通过 JDBC API 实现。下面是一个简单的示例代码:
```scala
import java.util.Properties
import org.apache.spark.sql.{SaveMode, SparkSession}
object SaveToMysql {
def main(args: Array[String]): Unit = {
val spark = SparkSession.builder()
.appName("SaveToMysql")
.master("local[*]")
.getOrCreate()
// 读取数据
val df = spark.read.format("csv")
.option("header", true)
.option("inferSchema", true)
.load("data.csv")
// 处理数据
val result = df.select("name", "age").filter("age > 18")
// 保存数据到 MySQL 数据库中
val url = "jdbc:mysql://localhost:3306/test"
val table = "result"
val properties = new Properties()
properties.setProperty("user", "root")
properties.setProperty("password", "123456")
properties.setProperty("driver", "com.mysql.jdbc.Driver")
result.write.mode(SaveMode.Append)
.jdbc(url, table, properties)
spark.stop()
}
}
```
上面的代码首先通过 SparkSession 对象创建一个 Spark 应用程序,并读取一个 CSV 文件作为输入数据。然后对数据进行处理,保留 name 和 age 两列,并筛选出 age 大于 18 的数据。最后,将结果数据保存到 MySQL 数据库中。在保存数据时,需要指定数据库连接 URL、表名和访问数据库的用户名和密码等参数。这里使用了 Append 模式,表示将结果数据追加到表中,如果表不存在则自动创建。如果需要覆盖表中的数据,则可以使用 Overwrite 模式。
阅读全文