2024-06-16 08:25:00 发布
网友
我有一些大的(20GB以上)CSV文件,是双引号“文本限定,我需要排序和输出到一个新的文件。
有些文件只在一列上按数字排序,而其他文件则在两列上排序,第一列按数字排序,第二列按字符串排序。
到目前为止,我尝试过Pythons csv sort,但失败了,因为它最终耗尽了内存。以及CoreUtils for Windows,尽管sort似乎无法处理文本限定符并给出错误的结果。
是否有任何建议/现有的解决方案可以处理此类问题?平台为Windows Server 2008 R2。
这里你需要一些外部排序技巧。这个想法是创建更小的排序文件,然后逐个排序并保存在新文件中。下面是一个简短的总结。在
所以,当你不断迭代块并一直保持排序时,结果会慢慢增长。此文件是迭代结束后最后排序的CSV。在
你可以尝试几种不同的算法来满足你的需要。有关详细信息,请查看https://en.wikipedia.org/wiki/External_sorting。在
因此,我能够在一台8GB的机器上,在2-3小时内对一个40GB的文件进行排序,这台机器还运行着其他几个进程。在
这里你需要一些外部排序技巧。这个想法是创建更小的排序文件,然后逐个排序并保存在新文件中。下面是一个简短的总结。在
所以,当你不断迭代块并一直保持排序时,结果会慢慢增长。此文件是迭代结束后最后排序的CSV。在
你可以尝试几种不同的算法来满足你的需要。有关详细信息,请查看https://en.wikipedia.org/wiki/External_sorting。在
因此,我能够在一台8GB的机器上,在2-3小时内对一个40GB的文件进行排序,这台机器还运行着其他几个进程。在
相关问题 更多 >
编程相关推荐