2016-12-05 44 views
0

我是Spark的新手,并试图尽可能多地读取&研究。目前我被困在这个上,我花了几天的时间来解决。我已经在3台机器(1台主机,2台从机)上成功建立了Spark Clusters,并运行了一些示例。现在我正在尝试编写一个Python应用程序,它将读取csv文件,然后将每行分成一个JSON文件并将其全部上传到S3。这里是我的问题:将Spark数据框分割为每一行并将其转换为JSON - Python

  1. 我已经转换的CSV星火据帧,使用SparkSession.read.csv(),我怎么分割这个数据框为多行并转换为JSON?我已经读过Spark DataFrame具有toJSON函数,但适用于整个DataFrame,那么如何在DataFrame的每一行而不是整个DataFrame上使用thi函数?

  2. 如何在我的应用程序中应用分布式系统,给出我有2个从站和一个主站?或者,我的应用程序是否会自动将工作分成更小的部分并分配给从服务器?

  3. 如何将转换后的JSON转换为S3,一些示例代码指导将对我有所帮助。

我会非常感谢,如果你能帮助我,谢谢你的帮助提前。

回答

1
  1. 要阅读json文件,可以使用sqlContext.jsonFile()。您可以使用常规SQL查询进行处理。您可以从更多信息中看到here
  2. 火花在分区上工作。您的数据将被分成分区并在执行程序上运行。火花将根据您使用的模式进行。不确定您是否使用YARN。
  3. 在python中,可以使用boto3将数据保存到amazon s3中。它是一个非常易于使用的软件包。看here
+0

所有的观点都是正确的,并帮助我找到答案很多。谢谢。 – Leo

相关问题