Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Amazon EMR作业,以许多json文件作为输入_Python_Json_Hadoop_Amazon S3_Amazon Emr - Fatal编程技术网

Python Amazon EMR作业,以许多json文件作为输入

Python Amazon EMR作业,以许多json文件作为输入,python,json,hadoop,amazon-s3,amazon-emr,Python,Json,Hadoop,Amazon S3,Amazon Emr,我正在用python编写一个hadoop流应用程序,在EMR上运行。EMR作业的输入是S3 bucket中的文件目录,每个文件都是包含单个json对象的json文件。我希望映射程序对每个json文件进行操作,一次一个,并生成一个键、值对,如下所示: 地图: {'name':'foo','request':'bar'}->'name',{'request':'bar'} 减少: 'name',[{'request':'bar'},{'request':'baz'}]->{'name':'foo',

我正在用python编写一个hadoop流应用程序,在EMR上运行。EMR作业的输入是S3 bucket中的文件目录,每个文件都是包含单个json对象的json文件。我希望映射程序对每个json文件进行操作,一次一个,并生成一个键、值对,如下所示:

地图:

{'name':'foo','request':'bar'}->'name',{'request':'bar'}

减少:

'name',[{'request':'bar'},{'request':'baz'}]->{'name':'foo','request':['bar','baz']}


如果我想处理的所有json对象都作为一行写入一个文件,那么这似乎是可行的,尽管事实并非如此;每个.json文件中都有多个换行符。是否有为此类操作定制的输入格式?请给我一些指导。谢谢

您可以在Java中使用全文件阅读器:

关键是它为isSplitable返回false