我可以使用*(星号):
同时阅读几个json文件sqlContext.jsonFile('/path/to/dir/*.json')
有没有办法对镶木地板做同样的事情?明星不起作用。
答案 0 :(得分:14)
仅供参考,您还可以:
使用通配符* sqlContext.read.parquet("/path/to/dir/part_*.gz")
通过明确指定sqlContext.read.parquet("/path/to/dir/part_1.gz", "/path/to/dir/part_2.gz")
答案 1 :(得分:7)
请参阅spark jira上的this issue。从1.4开始支持它。
如果不升级到1.4,您可以指向顶级目录:
sqlContext.parquetFile('/path/to/dir/')
将加载目录中的所有文件。或者,您可以使用HDFS API查找所需的文件,并将它们传递给parquetFile(它接受varargs)。
答案 2 :(得分:3)
InputPath = [hdfs_path + "parquets/date=18-07-23/hour=2*/*.parquet",
hdfs_path + "parquets/date=18-07-24/hour=0*/*.parquet"]
df = spark.read.parquet(*InputPath)
答案 3 :(得分:0)
供读取:提供文件的路径和'*'
示例
pqtDF=sqlContext.read.parquet("Path_*.parquet")