我有一张桌子,如下:
+---------------+--------------+
| StringColumn | DoubleValues |
+---------------+--------------+
| string value 1| val1 |
| string value 2| val2 |
| string value 3| val3 |
| string value 4| val4 |
| string value 5| val5 |
| string value 6| val6 |
| string value 7| val7 |
| string value 8| val8 |
| string value 9| val9 |
+---------------+--------------+
在上表中,StringColumn
字符串被保证是唯一的。但是,由于它们可能会大量生产,因此我想为StringColumn
中的每个值生成唯一的哈希字符串。然后,使用此哈希字符串在HashMap
中转换上表,以减小导出到文件中时HashMap
对象的大小。
我应该使用哪种算法来生成哈希字符串,以便在生产中可以使用相同的算法来生成相同的哈希字符串,然后检查导出的哈希图以进行查找?
注意:如果字符串不能从哈希字符串中复制出来,则可以。唯一的限制是,可以在哈希图中进行新的字符串查找。
到目前为止我做了什么?
我尝试为每个字符串生成sha256哈希,然后将其添加到哈希图中。但是从我在互联网上找到的文章来看,生成sha256散列似乎很慢。请提出一个更好,更快速的解决方案。