0
我有一个存储文件哈希和文件名的数据库表(MySQL 5)。我正在索引数千个文件。我没有主键集,因为我想索引所有文件,即使它们重复但位于不同位置。所以如果我有两个文件X.bin和Y.bin,即使文件哈希值相同,我也想将它们插入到我的表中,因为它们具有不同的文件名。在MySQL数据库中查询64字节(char)散列需要几秒钟的时间。如何提高?
我不想插入重复项的唯一时间是文件名和文件哈希已存在于系统中。为此,我需要对文件哈希执行查询。这是需要很长时间的地方。我正在使用长度为64个字符的SHA256哈希。我在数据库中有成千上万条记录,当我对单个散列进行查询时,需要5秒钟的时间。
我的查询是:
SELECT FileName FROM fileinfo WHERE FileHash='qazwsxedcrfvtgbyhnujm'
比使用一个不同的文件哈希像MD5是32个字符长度的其他,有什么事我可以做些什么来加快查询?
感谢
谢谢。我不知道这一点,我感到很蠢。 – JMS10 2012-03-01 20:14:48