spark

如何在Spark中读写Parquet文件

小樊
81
2024-12-16 16:49:16
栏目: 大数据

在Apache Spark中,可以使用spark.sql.parquet模块来读写Parquet文件

  1. 添加依赖

首先,确保在项目的build.sbt文件中添加了Parquet相关的依赖。对于sbt项目,请在libraryDependencies部分添加以下内容:

libraryDependencies += "org.apache.spark" %% "spark-parquet" % "3.2.0" % "provided"

对于Maven项目,请在pom.xml文件中添加以下内容:

<dependency>
  <groupId>org.apache.spark</groupId>
  <artifactId>spark-parquet_2.12</artifactId>
  <version>3.2.0</version>
  <scope>provided</scope>
</dependency>
  1. 读取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()
  1. 写入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

0
看了该问题的人还看了