spark怎么读取csv写入mysql
时间: 2024-10-15 08:17:07 浏览: 26
spark解析csv文件,存入数据库
Spark可以使用其内置的数据处理库`pyspark.sql`来读取CSV文件并将其写入MySQL数据库。以下是基本步骤:
1. **读取CSV文件**:
使用`SparkSession.read()`函数加载CSV数据,例如:
```python
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("read_csv").getOrCreate()
df_csv = spark.read.format("csv") \
.option("header", "true") \ # 如果第一行包含列名
.option("inferSchema", "true") \ # 自动推断数据类型
.load("path_to_your_csv_file.csv")
```
2. **配置连接MySQL**:
需要安装`pyodbc`或`jdbc`库,这取决于你的Spark版本是否支持JDBC驱动。然后创建一个`DataFrameWriter`实例,并设置连接信息:
```python
connection_url = f"jdbc:mysql://{your_host}:{your_port}/{your_database}?user={your_username}&password={your_password}"
writer = df_csv.write.format("jdbc") \
.options(url=connection_url, driver="com.mysql.cj.jdbc.Driver") \
.mode("append") # 或者 "overwrite"替换原有数据
```
3. **写入MySQL**:
调用`save()`方法将数据写入MySQL表:
```python
writer.save()
```
注意:
- 替换上述占位符为实际的数据库连接信息。
- `driver`选项应匹配你使用的MySQL驱动程序。
阅读全文