星火 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")
最佳答案
从 Spark 2 开始,com.databricks.spark.csv
不需要完全写出,因为包含 CSV 阅读器。因此,首选选项 2。
或者稍微短一点,
spark.read.csv("data/myfile.csv", inferSchema=True, header=True)
但是如果您将输入格式提取到某个配置文件中,选项 2 会更好
关于python - 为什么在 PySpark 中有两种读取 CSV 文件的选项?我应该使用哪一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58261793/