【发布时间】:2021-10-08 16:25:33
【问题描述】:
我正在尝试使用本地和 s3 中的以下代码从文件夹中读取文件。目前我正在本地进行测试。
#job_date_str = "2021-08-03T05:20:00"
path = f'{config["input"]["logs"][job]}{job_date_str}(.)*'
# also tried path = f'{config["input"]["logs"][job]}{job_date_str}*'
dataframe = spark.read.schema(schema).json(path, multiLine=multiline)
该文件夹在目录(config["input"]["logs"][job]) 中有文件 2021-08-03T05:20:00.000-31bnrrpUT5qNLtEX8zWt.log.gz。 (YYYY-MM-DDTh:m:s.000-something)
这给我带来了错误
21/08/03 12:12:49 ERROR logger: error: java.net.URISyntaxException: Relative path in absolute URI: 2021-08-03T05:20:00.000-31bnrrpUT5qNLtEX8zWt.log.gz in get_json
不知道是什么意思。 这里有以 job_date_str 开头的文件名
但之前我试图使用读取文件。
#job_date_str = "2021-08-03T05:20:00"
path = f'{config["input"]["logs"][job]}{job_date_str}/*'
dataframe = spark.read.schema(schema).json(path, multiLine=multiline)
它在本地和 s3 中工作。 这里我将文件存储在 job_date_str 目录中。
【问题讨论】:
-
显然,
path的值是2021-08-03T05:20:00.000-31bnrrpUT5qNLtEX8zWt.log.gz,它被认为是相对路径。你应该给出一个绝对路径,这意味着以/开头的东西。
标签: apache-spark pyspark apache-spark-sql amazon-emr