我有一个进程,它接受一个大文本文件(大约150 MB)块,处理每个块,并将所有内容格式化为临时数据库(没有主键)。整个过程大约需要3分钟。
我这样做的原因是因为我整个处理文件的时间超过了5分钟,这在服务器上崩溃了。
无论如何,我现在已经完成了这件事。最后一步是采取该表,我们将调用 temp ,并将其合并到实时,继续实时表上的自动增量ID(原因)我把它从 temp 中删除了?我可能错了。)所有列完全相同,在 live 表中添加了主键。
我需要做的是select * from temp group by col_a
,插入直播。
我尝试过mysql进程,exec()
命令,yadda yadda。
问题是这个命令继续在已花费3分钟的脚本中运行。
那么,尽可能快地将1M行从临时表移动到实时表的最有效方法是什么?所有在等待命令完成时返回bool值或其他东西。
如果重要,应用程序将在Laravel 4.2中构建。
感谢任何帮助。
非常感谢