为什么在PySpark中有两个选项可以读取CSV文件?我应该用哪一个?

2024-04-24 15:18:28 发布

您现在位置:Python中文网/ 问答频道 /正文

火花2.4.4:

我想导入一个CSV文件,但是有两个选项。为什么?哪一个更好?我应该用哪一个?你知道吗

from pyspark.sql import SparkSession

spark = SparkSession \
    .builder \
    .master("local[2]") \
    .config('spark.cores.max', '3') \
    .config('spark.executor.memory', '2g') \
    .config('spark.executor.cores', '2') \
    .config('spark.driver.memory','1g') \
    .getOrCreate()

方案1

df = spark.read \
    .format("com.databricks.spark.csv") \
    .option("header", "true") \
    .option("inferSchema", "true") \
    .load("data/myfile.csv")

方案2

df = spark.read.load("data/myfile.csv", format="csv", inferSchema="true", header="true")

Tags: csvconfigtrueformatdfread方案cores
1条回答
网友
1楼 · 发布于 2024-04-24 15:18:28

在spark2中,com.databricks.spark.csv不需要完全写出,因为包含了CSV读取器。因此,首选方案2。你知道吗

或者稍微短一点

spark.read.csv("data/myfile.csv", inferSchema=True, header=True)

但如果将输入格式提取到某个配置文件中,则选项2会更好

相关问题 更多 >