我是Databricks和Spark的新手,所以我希望我的问题清楚。如果没有,请告诉我。
我有一个天蓝色的文件夹,其中包含超过200万个XML文件。目标是将所有这些文件转换为一个CSV文件。我的代码可以将XML转换为CSV,然后将其添加到Azure中的CSV文件中。我已经用50.000个文件对其进行了测试,并且可以正常工作。
但是,当我要转换所有XML文件(+2百万个)时,出现错误消息,超过了驱动程序限制。我不想增加此限制,因为它不是很有效,所以我想到了一次转换一个XML文件,然后将其添加(附加)到CSV文件的想法。因此,我不想在一个作业中转换所有XML文件,而是要在每个作业中转换一个XML文件。
一个同事能够在Scala中开发一个代码,该代码创建了一个包含所有+200万个文件路径的表。我可以使用SQL访问此表:
(出于安全原因,未显示完整路径)。
我真正需要的是Python中的代码,该代码可以循环遍历该表并一次检索一个路径(作为字符串)。我在Python中需要此代码的原因是因为我拥有在Python中转换为CSV的代码。转换只需要路径作为字符串即可执行。如果可以循环播放,则每个循环都会从表中检索一个新字符串作为字符串,然后转换为CSV,然后添加到一个CSV文件中。
所以我的问题是:如何遍历该表,每次迭代以字符串形式返回路径(表的值)?此迭代应该能够遍历整个列表(+200万条路径)。
我希望我的问题很清楚,有人可以帮忙。
最诚挚的问候,
Ganesh