Re: Посоветовать алгор итм хэширования
От Oleh Derevenko (2:5020/400) к Alex Aka Parasite
В ответ на Заголовок предыдущего сообщения в треде (Имя Автора)
From: "Oleh Derevenko" <oder@eleks.lviv.ua>
Привет
"Alex Aka Parasite" wrote in message...
> OD> Самый правильный подход в данном случае:
> OD> 1) Пройтись по всем файлам и в конец каждого дописать 4-байтное
> OD> значение из автоинкрементного поля. 2) В будущем, при появлении новых
> OD> файлов к ним также прибавлять значение генератора. 3) Хэшем считать
> OD> это самое 4-байтное значение. 4) При чтении и отдаче файлов последние
> OD> 4 байта обрезать.
>
> К сожалению, контент трогать на запись *нельзя*. Он обязан оставаться
> неизменным. Свои файлы в уже имеющиеся папки с контентом - ложить тоже
> нельзя.
> Так что - только чтение.
Что-то, я никак не могу понять: как должен использоваться хеш? Сначала у
меня сложилось впечатление, что для идентификации контента в запросе от
клиента. Hо если сам хеш в файл не вносится, каким образом ты собираешься
искать файл на диске, если тебе клиент запросит контент ID:45F28890DEEE044A?
Hе думаешь же ты проходить по всем файлам, ещё раз рехешировать их и
сравнивать с запросом?
Предположим, что нет. Тогда, очевидно, ты должен хранить хеш в базе вместе
со ссылкой на файл, по которой ты сможешь его найти. Отсюда напрашивается
логичный вопрос: на кой чёрт тебе дался этот хеш вообще, если вся его роль
сводится к созданию ключа файла в таблице? Заведи автоинкрементное поле и
ложи в один столбец его, а в другой ложи имя файла - получится то же самое.
Oleh Derevenko
-- ICQ: 36361783
--- ifmail v.2.15dev5.4
* Origin: Eleks Software, http://maps.google.com/maps?z=18&ll=49. (2:5020/400)
Ответы на это письмо:
From: Username
Заголовок следующего сообщения в треде может быть длинным и его придется перенести на новую строку
From: Username
Или коротким