文件名不以.gz
结尾,我无法将其更改回来,因为它们与其他程序共享。
file1.log.gz.processed
只是一个csv
文件。但是我如何在pyspark
中阅读,最好是pyspark.sql
?
我尝试指定格式和压缩但无法找到正确的键/值。如,
sqlContext.load(fn, format='gz')
没有工作。虽然Spark可以处理gz
文件,但似乎从文件名中确定了编解码器。如,
sc.textFile(fn)
.gz
结尾,将起作用,但在我的情况下不会。
如何指示Spark使用正确的编解码器?谢谢!
答案 0 :(得分:1)
你不应该使用.load,因为它是deprecated(从版本1.4.0开始)。您应该使用read.format(source).schema(schema).options(options).load()
。
sql_context.read.format("com.databricks.spark.csv")
.options(
header=... # e.g., "true"
inferSchema=...)
.load(file_path + ".gz")