- •1.Понятие базы данных
- •2. Предметная область информационной системы
- •3. Назначение и основные компоненты системы баз данных
- •4. Уровни представления баз данных
- •5. Понятие модели данных
- •6. Типы структур данных
- •7. Операции над данными
- •8. Ограничения целостности
- •9. Сетевая модель данных (смд)
- •10. Иерархическая модель данных (имд)
- •11. Реляционная модель данных (рмд)
- •12. Понятие отношения
- •13. Схема отношения
- •14. Достоинства и недостатки рмд
- •15. Операции реляционной алгебры. Язык манипулирования данными для реляционной модели
- •16. Другие модели данных
- •17. Объектно-реляционные модели данных
- •18. Объектно-ориентированные модели данных
- •19 Обзор современных систем управления базами данных (субд)
- •20 Классификация субд
- •21 Правила Кодда для реляционной субд (рсубд)
- •22 Основные функции реляционной субд
- •24 Типы данных sql.
- •Типы данных sql с плавающей точкой (дробные числа) и целые числа
- •Типы данных sql – Дата и время
- •25 Sql: создание и модификация базы данных.
- •26 Sql: Выборка данных. Поиск
- •27 Sql: Выборка из нескольких таблиц.
- •28 Sql:Агрегатные функции.
- •29 Sql: Подзапросы.
- •30 Sql: Представления.
- •31 Sql: Операторы модификации данных.
- •32 Кластеризация данных
- •33 Требования к проекту базы данных
- •34 Этапы проектирования базы данных
- •1. Предварительный анализ по.
- •2. Рассмотрение и принятие результатов анализа.
- •7. Согласование стандартов проектирования, в частности:
- •35 Инфологическое проектирование
- •1. Функциональный подход к проектированию бд.
- •2. Предметный подход к проектированию бд.
- •36 Проектирование с использованием метода "сущность-связь"
- •37 Определение требований к операционной обстановке
- •37 Выбор субд и инструментальных программных средств
- •39 Логическое проектирование бд
- •40 Физическое проектирование бд
- •41 Проектирование реляционной базы данных
- •42 Аномалии модификации данных
- •43 Нормализация и декомпозиция отношений
- •44 Первая нормальная форма (1нф).
- •45 Функциональные зависимости. Вторая нормальная форма (2нф).
- •46 Транзитивные зависимости. Третья нормальная форма (3нф).
- •47 Механизмы среды хранения и архитектура субд
- •48 Структура хранимых данных
- •49 Управление пространством памяти и размещением данных
- •50 Виды адресации хранимых записей
- •51 Способы размещения данных и доступа к данным в рбд
- •52 Способы доступа к данным
- •53 Индексирование данных. Индексированные файлы
- •54 Способы организации индексов
- •55 Многоуровневые индексы на основе в-дерева
- •56 Хеширование. Хешированные файлы
- •57 Методы хеширования
- •58 Разрешение коллизий
58 Разрешение коллизий
Случай, когда для двух и более ключей выдаётся одинаковый адрес, называется коллизией. Наличие коллизий снижает эффективность хеширования.
Разрешение коллизий достигается путём рехеширования – специального алгоритма, который используется каждый раз при размещении новой записи или при поиске существующей, если возникла коллизия. В системах баз данных рехеширование выполняется одним из следующих способов:
Открытая адресация: новая запись размещается вслед за последней запи-сью на данной странице или на следующей, если страница заполнена. (Для последней страницы памяти следующей является первая страница). Поиск записи осуществляется также последовательно, откуда следует, что записи нельзя удалять физически (с освобождением памяти), иначе цепочка рехешированных записей прервётся, и часть записей может быть "потеряна".
Использование коллизионных страниц: новая запись размещается на одной из коллизионных страниц, относящихся к таблице (в области переполнения). Для ускорения поиска рехешированных записей может использоваться связанная область переполнения, для которой на странице хранится ссылка на коллизионную страницу. Нулевое значение такой ссылки говорит об отсутствии коллизий для данных, размещённых на этой странице
Многократное хеширование. Заключается в том, что при возникновении коллизии для поиска другого адреса (возможно, на коллизионных страни-цах) применяется другая функция хеширования.
Примечание: значения ключа хеширования не обязательно должны быть уникальными. В реальных базах данных в качестве адреса записи может выступать адрес блока (стра-ницы памяти), в котором размещается несколько записей, возможно, с одинаковым значением ключа. Коллизией в этом случае является ситуация переполнения блока, адрес которого получен в результате применения функции хеширования к значению ключа новой записи. Тогда система выполнит для этой записи рехеширование.