Wydajne przeszukiwanie zbioru

0

Mam zbiór składający się z hashy MD5. Hashe nie mają przypisanych żadnych kluczy, a więc zbiór wygląda tak:
HASH1;HASH2;HASH3

Potrzebuję jak najszybciej sprawdzić czy dany hash znajduje się w zbiorze. Myślałem nad zwykłym plikiem w formacie binarnym, który przeszukujemy w celu znalezienia podstringu. Problemem jest, że zawartość pliku nie jest indeksowana, dlatego za każdym razem trzeba przejrzeć cały plik by sprawdzić czy zawiera hash. Czy lepsza w tym przypadku będzie baza danych, gdzie hashe będą przechowywane jako oddzielne rekordy w tabeli, tzn. jeden rekord = jeden hash. Wtedy mogę sprawdzić występowanie hasha w następujący sposób: SELECT TOP 1 * FROM Hashes.

1

Lepiej to będzie załadować do HashSeta i wyszukiwać w O(1) w pamięci. Pytanie tylko ile masz tych hashy i czy wejdzie ci to do ramu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1