我是pyspark的新用户,我正在尝试使用pyspark用于以下用例但不确定如何实现它,我希望S3位置中的文件夹名称作为我的read.json中的列名称 例如:
s3 location s3://mylocation/raghu/date/Appname-1/1.json
s3://mylocation/raghu/date/Appname-2/1.json
s3://mylocation/raghu/date/Appname-3/1.json
等等
我读的json语句是
test = sqlContext.read.json("s3a://mylocation/raghu/*/*/)
每个应用名称下都有多个json文件,
我在python中尝试使用boto从S3位置提取应用程序名称,但无法将该应用程序名称放在“test = sqlContext.read.json("s3a://mylocation/raghu/*/App-name/)
”中以从每个应用程序中读取json文件。
我想要循环浏览每个应用程序名称并读取文件,我还希望app-name作为表中的列出现,因为我最终基于app-name分区在HDF中写入数据。
我通过在S3位置上创建临时表来实现类似的hive
s3://mylocation/raghu/date/Appname-1/1.json
并添加了一个脚本来更改表并添加分区作为app-name,这样我就可以在表中获取app-name并将其用于动态分区。
非常感谢任何帮助。
提前致谢