我想在LOAD DATA INFILE
数据库上使用mysql
批量插入大型数据集。
要跳过现有的行(所有列的行应该是唯一的,大约20个),我想计算hash
并添加unique index
它。因此,负载将跳过现有的条目。
我想使用GENERATED COLUMNS
:
GENERATED ALWAYS AS (md5(concat('column1', 'column2', ... 'columnN'))) STORED NOT NULL;
但由于要加载的文件是由java
工具准备的,我可能会添加任何散列算法,而不是在db中计算。
问题:哪种哈希算法在性能和性能方面最佳 碰撞?
md5, sha-1, sha-2, sha-256
?
样本大小约为100百万行。