我正在尝试运行两个 python 脚本,如下所述。
此代码旨在从文件的特定 URL 下载数据。
years = ["2013","2014","2018","2019"] 年份:代码(年份)
在这种情况下,代码是下载功能。我想下载多年的数据。在普通电脑上,每年下载大约需要 26 小时。
此代码旨在处理从上述代码下载的数据。在执行此代码之前,上述代码应该已经执行完毕。
years = ["2013","2014","2018","2019"] 年份:数据(年份)
在这种情况下,数据是数据处理功能。我想下载多年的数据。在普通电脑上,每年下载大约需要 24 小时。
所以我可以访问一台超级计算机,它可以让我使用 10 个节点,每个节点有 36 个核心,每个节点总共有 360 个核心,并且可以一次运行 4 个作业,最长可达 24 小时。
我打算在一个队列中运行两个作业,即首先下载数据,第二个作业是处理数据。我打算使用多个内核和节点来优化地最小化下载和处理每一年数据的执行时间。我被告知需要将多个核心和节点的使用集成到实际代码中。
对于如何根据可用资源最小化执行时间以及如何在代码中实现它的任何建议,我将不胜感激。我查看了多处理库,但无法完全实现它。
数据从下面的链接下载。drive.google.com/open?id=1TdiPuIjj7u-arACMPh5yVeegcJ-y3fLr 每年的数据大约是 6 GB,我认为下载时间太长只是因为代码必须检查每个 URL 是否有效并且它每年通过大约 100,000 个 URL。我希望使用超级计算机可以让我在 1 年内同时下载所有年份。下载代码。drive.google.com/open?id=1TdiPuIjj7u-arACMPh5yVeegcJ-y3fLr
数据处理代码只是通过将数据转换为 csv 文件,然后使用 pandas 来应用过滤器和阈值来处理数据。我希望同时处理所有这些年。该代码花费的时间太长,因为它每年要处理大约 100,000 个文件。我希望在超级计算机上同时处理所有这些年。