我需要一些帮助来设计有效的算法(我不需要你给我写任何代码!)。
我建立了一些PHP网站。
用户将上传到我的网站一个大文件(200mb +)。这个文件就像一张大桌子。
我需要将每一行与mySql进行比较。
如果mySql表的行之间有不匹配,我需要从输入文件中删除这一行。
例如:
输入文件:
chr pos info // columns
b 12 aaaaaaaaaaaaaaaaa
b 13 cccccc
c 100 fffffffffff
mySql表:
chr pos // columns
a 10
a 12
b 12
c 100
c 18
如果输入文件中的一行chr
和 pos
,mySql中的行中不存在 - 它将删除此行来自输入文件。
所以新的输入文件将是:
chr pos info // columns
b 12 aaaaaaaaaaaaaaaaa
c 100 fffffffffff
对于有效的运行时间,你会有任何有效的方法吗?
我不需要你给我写代码,我只需要理解算法。
我尝试做的算法:
LOAD DATA LOCAL INFILE
的临时mySql表,然后使用常规的SQL查询来比较行。我对第一算法的处罚比 seconed 更好。我还没有尝试过第三次。