在Apache Spark中,可以使用spark.sql.parquet
模块来读写Parquet文件
- 添加依赖
首先,确保在项目的build.sbt
文件中添加了Parquet相关的依赖。对于sbt项目,请在libraryDependencies
部分添加以下内容:
libraryDependencies += "org.apache.spark" %% "spark-parquet" % "3.2.0" % "provided"
对于Maven项目,请在pom.xml
文件中添加以下内容:
org.apache.spark spark-parquet_2.12 3.2.0 provided
- 读取Parquet文件
要读取Parquet文件,首先需要创建一个SparkSession
,然后使用read.parquet()
方法读取文件。例如,假设有一个名为example.parquet
的Parquet文件,可以使用以下代码读取它:
import org.apache.spark.sql.SparkSession val spark = SparkSession.builder() .appName("Read Parquet File") .master("local") .getOrCreate() val parquetFilePath = "path/to/example.parquet" val df = spark.read.parquet(parquetFilePath) df.show()
- 写入Parquet文件
要将数据帧(DataFrame)写入Parquet文件,可以使用write.parquet()
方法。例如,以下代码将名为df
的数据帧写入名为output.parquet
的文件:
import org.apache.spark.sql.SparkSession val spark = SparkSession.builder() .appName("Write Parquet File") .master("local") .getOrCreate() val parquetFilePath = "path/to/output.parquet" df.write.parquet(parquetFilePath)
注意:在读取和写入Parquet文件时,可能需要根据实际数据类型和Parquet文件格式调整代码。此外,还可以使用其他参数来配置读取和写入行为,例如spark.sql.parquet.compression
用于启用压缩。更多选项和详细信息,请参阅官方文档:https://spark.apache.org/docs/latest/api/scala/org/apache/spark/sql/parquet/package.html