Генерация уникального идентификатора из отсортированного набора строк
У меня есть массив массива строк, то есть массив[Array[String]]
Строки-это имена папок в файловой системе, и возможно около 100 тысяч уникальных имен папок.
Таким образом, структура данных будет выглядеть следующим образом:
Array[ <- Outer Array which is not sorted, 100 million in length Array [/ABC/DEF,/XYZ/YTR,.......] <- This inner array is sorted on folder names Array [/CDE/FRT,/TUV/HYT,........] <- Want to generate a shorter unique id for each one of this ]
Для каждого массива имен папок во внешнем массиве я хочу сгенерировать уникальный идентификатор. Я знаю, что простое хэширование и т. д. строк приведет к столкновениям и, следовательно, небезопасно. Но мне было интересно, есть ли какой-нибудь способ использовать тот факт, что внутренний массив сортируется для создания алгоритма хэширования. Я могу перейти к строке из 500 символов. Любая библиотека Java/Scala, которая делает это? Предположим, что я не могу сделать groupBy и т. д. На этом наборе данных.
Что я уже пробовал:
Провел кое-какие исследования в интернете.
Venkat Dabri
Могу ли я использовать для этого алгоритм SHA-512?