Кратчайший уникальный идентификатор Python из строк

У меня более 100 миллионов уникальных строк (VARCHAR(100) UNIQUE в базе данных MySQL). ). Теперь я использую приведенный ниже код для создания из них уникального хэша (VARCHAR(32) UNIQUE), чтобы уменьшить размер индекса таблицы InnoDB (уникальный индекс в varchar(100) примерно в 3 раза больше, чем в поле varchar(32) ).

id = hashlib.md5(str).hexdigest()

Есть ли другой способ создать более короткие идентификаторы из этих строк и обеспечить разумные гарантии уникальности?

5
задан jack 19 June 2012 в 06:18
поделиться