spark把一张csv表导入MySQL
时间: 2023-08-05 21:16:46 浏览: 46
可以使用Spark SQL将CSV表读取为DataFrame,然后使用JDBC将DataFrame保存到MySQL中。下面是一个简单的示例代码:
```scala
import org.apache.spark.sql.{DataFrame, SparkSession}
object CsvToMysql {
def main(args: Array[String]): Unit = {
// 创建SparkSession
val spark = SparkSession.builder()
.appName("CsvToMysql")
.master("local[*]")
.getOrCreate()
// 读取CSV文件为DataFrame
val csvFile: DataFrame = spark.read
.option("header", "true")
.option("inferSchema", "true")
.csv("/path/to/csv/file")
// 将DataFrame保存到MySQL中
csvFile.write
.format("jdbc")
.option("url", "jdbc:mysql://localhost:3306/mydatabase")
.option("dbtable", "mytable")
.option("user", "myusername")
.option("password", "mypassword")
.option("driver", "com.mysql.jdbc.Driver")
.save()
}
}
```
在这个示例中,我们假设CSV文件有一个标题行,并且Spark可以自动推断列的类型。我们还需要将URL、表名、用户名和密码替换为你自己的信息。这个代码片段只是一个简单的示例,你可以根据你的需求进行调整。