Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Связанная область переполнения
Как и в предыдущем методе, в этом методе для разрешения конфликтов с записями, которые не могут быть размещены в слоте с их адресом хэширования, используется область переполнения. Однако в данном методе каждому сегменту выделяется дополнительное поле, которое иногда называется указателем синонима. Оно определяет наличие конфликта и указывает страницу в области переполнения, использованную для его разрешения. Если указатель равен нулю, то никаких конфликтов нет. Для более быстрого доступа к записи переполнения можно использовать указатель синонима, который указывает на адрес слота внутри области переполнения, а не на адрес сегмента. Записи внутри области переполнения также имеют указатели синонима, которые содержат в области переполнения адрес следующего синонима для такого же адреса, поэтому все синонимы одного адреса могут быть извлечены с помощью цепочки указателей. Многократное хэширование Альтернативный способ разрешения конфликтов заключается в применении второй хэш-функции, если первая функция приводит к возникновению конфликта. Цель второй хэш-функции заключается в получении нового адреса хэширования, который позволил бы избежать конфликта. Вторая хэш-функция обычно используется для размещения записей в области переполнения. При работе с хэшированными файлами запись может быть достаточно эффективно найдена с помощью первой хэш-функции, а в случае возникновения конфликта для определения ее адреса следует применить один из перечисленных выше способов. Прежде чем обновить хэшированную запись, ее следует найти. Если обновляется значение поля, которое не является хэш-ключом, то такое обновление может быть выполнено достаточно просто, причем обновленная запись сохраняется в том же слоге. Но если обновляется значение хэш-ключа, то до размещения обновленной записи потребуется вычислить хэш-функцию. Если при этом будет получено новое хэш-значение, то исходная запись должна быть удалена из текущего слота и сохранена по вновь вычисленному адресу. Динамическое хэширование Динамическое хэширование Перечисленные выше методы хэширования являются статическими, в том смысле, что пространство хэш-адресов задается непосредственно при создании файла. Считается, что пространство файла уже насыщено, когда оно уже почти полностью заполнено и администратор базы данных вынужден реорганизовать его хэш-структуру. Для этого может потребоваться создать новый файл большего размера, выбрать новую хэш-функцию и переписать старый файл во вновь отведенное место. В альтернативном подходе, получившем название динамического хэширования, допускается динамическое изменение размера файла с целью его постоянной модификации в соответствии с уменьшением или увеличением размеров базы данных.
Основной принцип динамического хэширования заключается в обработке числа, выработанного хэш-функцией в виде последовательности битов, и распределении записей по сегментам на основе так называемой прогрессирующей оцифровки (progressive digitization) этой последовательности. Динамическая хэш-функция вырабатывает значения в широком диапазоне, а именно b-битовые двоичные целые числа, где b обычно равно 32. Ограничения, свойственные методу хэширования Использование метода хэширования для извлечения записей основано на полностью известном значении хэш-поля. Поэтому, как правило, хэширование не подходит для операций извлечения данных по заданному образцу или диапазону значений. Более того, хэширование не подходит для поиска и извлечения данных по любому другому полю, отличному от поля хэширования.
|
|||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 128; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.12.36.30 (0.005 с.) |