我有一个使用3个字符串形成文件名的应用。我创建一个表来检查文件是否已经存在。我还没想到的是,如果我最好制作1个88个字符的列或3个较小的列进行搜索。 这张表将有数百万条记录。
我考虑使用脚本检查文件系统的文件名,但必须从多个服务器访问。我知道我可以在服务器上用文件调用php脚本,但是还需要测试这个与MySQL表的性能。
3个字符串如下:
file size = 8 bytes
md5 = 16 bytes
sha(256) = 64 characters.
文件扩展名始终相同,因此不包括在内。
答案 0 :(得分:0)
3个单独的专栏。
但是......只是MD5就足够了。因为它是128位,...如果你有9 万亿行,那么9万亿次误击只有一次机会。由于你只有几百万,所以可能性要小得多。
我假设您在md5上使用UNHEX()
并使用BINARY(16)
? (类似于sha256。)