
- •Теория субд
- •За таблицами – наше будущее!
- •Связываем данные
- •Объектный рай
- •Сетевая база данных
- •Клиент-сервер
- •Особенности клиент-сервера
- •Индексы на сервере
- •Третий уровень
- •Сетевые субд
- •Архитектуры субд: технология локальных (настольных) бд
- •Архитектуры субд: технология "клиент-сервер"
- •В чем сходства и различия?
- •Выбираем бд
- •Кибернетическое будущее за базами знаний
- •Искусственный интеллект
- •Данные и знания
- •Базы знаний и экспертные системы
- •Машинное обучение
- •Анализ данных и olap-технологии
- •Индукция правил и деревья решений
- •Хранилища данных и корпоративная память
- •Машинное обучение – ключ к кибернетическому бессмертию
- •Кофе. Солнце. Базы данных
- •Не microsoft'ом единым. Bde
- •Odbc на практике
- •Форточки и odbc
- •Odbc для пингвина
- •Какие они бывают?
- •Что такое правильная база данных?
- •Нужна наглядная схема!
- •А как это сделать?
Какие они бывают?
Почти сорокалетний опыт развития баз данных показал жизнеспособность трех типов моделей данных: иерархической, сетевой и реляционной.
В иерархической модели, которая появилась на свет раньше других, все объекты и атрибуты базы данных образуют иерархический набор - такую структуру, в которой все элементы связаны между собой отношениями подчиненности. При этом любой элемент может подчиняться только какому-нибудь одному другому элементу. Такую форму зависимости удобно изображать в виде древовидного графа – в виде связанной и не имеющей циклов схемы, составленной из точек и стрелок.
Основным достоинством
иерархической модели данных является
простота ее восприятия и использования,
а также быстрота дос
тупа
к данным. Но без недостатков тут не
обошлось. Во-первых, не все связи между
объектами в реальном мире подчиняются
строгой иерархии, скорее наоборот…
Во-вторых, из-за строгой иерархической
упорядоченности объектов значительно
усложняются операции включения и
удаления (удаление исходных объектов
приводит к удалению порожденных).
Плюс сложность манипулирования данными
в такой базе, поскольку требуется
производить в явном виде навигационные
операции, которые связаны с перемещением
указателя, определяющего текущий
экземпляр конкретного элемента
данных.
Позже теоретиками была разработана сетевая модель, которая является расширением иерархического подхода к организации данных. В иерархических структурах объект-потомок должен иметь только одного предка, а в сетевой структуре потомок может иметь любое количество предков.
Главным достоинством сетевой модели данных является простота реализации любых взаимосвязей, часто встречающихся в реальном мире. Но за такое удовольствие приходится платить сложностью разработки. Например, прикладной программист обязан разбираться в деталях всей этой навороченной структуры базы данных, поскольку при обработке он должен осуществлять навигацию ("продвижение") среди различных экземпляров записей.
При этом обе дореляционные (читай "дореволюционные") модели – иерар хическая и сетевая – страдают одним большим недостатком: они слишком привязаны к конкретным данным. Эта зависимость послужила главным препятствием на пути к развитию реальных программных систем, основанных на базах данных: слишком много изменений приходилось вносить в код прикладной программы при каждой корректировке структуры базы (логическая зависимость), а также при изменении физического носителя данных (физическая зависимость).
Наконец, доктор наук математик Э.Ф. Кодд (США) придумал реляционную модель, гениальную по своей простоте. Единственной структурой данных, которую видит пользователь, является двухмерная таблица. Название "реляционная" происходит от слова relation (англ. "отношение"). Кодд придумал также основные опе рации, которые легко могут обработать данные в таблицах и получить результат в виде новой таблицы. Причем уникальность таких манипуляций данными в том, что за одну операцию можно обработать одновременно все данные таблицы и даже нескольких таблиц. И тебе не придется писать никаких циклических процедур, обрабатывая каждую запись отдельно!
Простота использования реляционной модели обеспечила ее безусловный успех, который длится вот уже более 30-ти лет. Одно из достоинств этой модели – возможность преобразовать любую структуру данных в простую двумерную таблицу.