我必须将几百万个 128 位哈希值存储到数据库中,并且我正在为我的表设计而苦苦挣扎。
我应该将哈希存储在两个 BIGINT 字段中还是只使用 BINARY(16)?我的典型用例是根据哈希查找重复记录。
我可以使用(有两个大整数)
select * from hash where hash1=@hash1 and hash2=@hash2
或(使用 binary(16) 列)
select * from hash where hash=@hash
性能是否重要?
我正在使用 MS SQL Server,但我认为这在这里并不重要。但是,我正在从 C# 程序访问 MS SQL,并且首选易于读取/写入值,但不是交易破坏者。目前我有一个ulong数组。