我有一个用 PHP(在 symfony 上)编写的应用程序,可以导入大型 CSV 文件(最多 100,000 行)。它有一个真正的内存使用问题。一旦它处理完大约 15,000 行,它就会逐渐停止。
我知道我可以在 PHP 中采取一些措施,但无论如何我已经用完了 PHP。
如果我想编写一个导入 CSV 文件的应用程序,您认为 Ruby 和 Python 之间会有什么显着差异吗?它们中的任何一个都适合更多与进口相关的任务吗?我意识到我是在根据很少的信息提出问题。请随时让我澄清一些事情,或者只是笼统地说。
如果有什么不同的话,我真的很喜欢 Lisp,如果可能的话,我更喜欢这两种语言的 Lispier。
最佳答案
您要将 CSV 文件导入什么?您不能以一种不会将整个文件立即加载到内存中的方式解析 CSV 文件(即一次处理一行)吗?
如果是这样,那么您可以使用 Ruby 的标准 CSV 库来执行类似以下操作"
CSV.open('csvfile.csv', 'r') do |row|
#executes once for each row
p row
end
现在不要将此答案作为切换到 Ruby 的直接理由。如果 PHP 在其 CSV 库中没有类似的功能,我会非常感到惊讶,因此您应该在决定需要切换语言之前更彻底地研究 PHP。
关于php - 用于大量导入脚本的 Ruby 或 Python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4571119/