Хэширование как ассоциация
Jul. 5th, 2007 10:46 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Хэширование это метод распределения данных в памяти компьютера таким образом, чтобы осуществлялся "почти" прямой доступ к ним. Заранее известная хэш-функция вычисленная на конкретном элементе дает его адрес в базе данных. Доступ к информации не совсем прямой за счет того, что у некоторых элементов оказывается одинаковое значение хэш-функции и в этом случае дальнейший поиск приходится проводить перебором.
Мне это напоминает работу нашего мозга, когда мы пытаемся что-то вспомнить. По ассоциациям порой выскакивают никак не связанные вещи. Видимо у нас в голове вычисляется какая-то хитрая хэш-функция, которая и дает непредсказуемые коллизии. С этим подходом также хорошо согласуются оценки, по которым наша память заполнена не более чем на 10-15%. Это как раз порог заполненности базы данных, при котором хэширование перестает быть эффективным и лучше использовать другие методы хранения информации.
Мне это напоминает работу нашего мозга, когда мы пытаемся что-то вспомнить. По ассоциациям порой выскакивают никак не связанные вещи. Видимо у нас в голове вычисляется какая-то хитрая хэш-функция, которая и дает непредсказуемые коллизии. С этим подходом также хорошо согласуются оценки, по которым наша память заполнена не более чем на 10-15%. Это как раз порог заполненности базы данных, при котором хэширование перестает быть эффективным и лучше использовать другие методы хранения информации.
Re: работа мозга
Date: 2007-07-16 01:11 am (UTC)-- не кажется. Я намеренно разделяю эти процессы. Пусть это не вполне адекватно с точки зрения физиологии, но модель она на то и модель, чтобы упрощать. -- по-моему это прекрасно вписывается в мою модель. Просто контекст участвует в формировании хэш-кода. Например, если ты сидишь перед следователем и тебе очень не выгодно вспоминать какую-то информацию, то образ следователя включается в запрос и препятствует получению информации.
-- сайт там большой, где конкретно смотреть?