Экскурс в историю. Модели данных.

Что же такое БД? На сегодняшний день под этим термином понимают два понятия:

  1. Данные, каким-то образом структурированные.
  2. Прикладное ПО для работы с данными.

Мы в нашем курсе под термином БД будем иметь ввиду сами данные, а ПО для работы будем называть СУБД - Система управления базами данных.

Как вы думаете, когда появились первые СУБД? Это было в конце 60-х годов. Именно тогда появилась потребность хранить и работать с большими (на тот момент) объемами данных. Например, бронирование авиабилетов, банковские системы, корпоративные системы продаж - вот несколько примеров систем, в которых необходимость эффективной работы с данными критична.

А как вы думаете, для чего нужны СУБД? Какую функцию они несли и продолжают нести по сей день?

Предполагается, что основные функции СУБД:

  1. Хранение большого объема данных длительное время; защита их от порчи.
  2. Авторизация доступа к данным. В том числе многопользовательского доступа. И, соответственно, защита от несанкционированного (неавторизованного) доступа.
  3. Обеспечение возможностью эффективно запрашивать и модифицировать данные.
  4. Обеспечение возможностью определять и модифицировать структуру хранимых данных; создавать БД.
  5. Независимость программ от данных.

Первыми примерами СУБД были файловые системы. Но они эффективно выполняли только первую и вторую функции.

Первые СУБД основывались на идеи визуально представить данные. Для этого использовались различные модели данных для представления структуры хранимой информации.

Модель данных – это совокупность структур данных и операций их обработки. С помощью модели данных могут быть представлены информационные объекты и взаимосвязи между ними.

Основными моделями на тот период были

  1. Плоская модель - данные представлены в виде коллекции пар "ключ - значение". Самый простой и давно нам известный способ представления данных. Примеры: телефонный справочник, массив, хэш-таблица, Dictionary, Map.
  2. Иерархическая модель - данные, представленные в виде одной или нескольких древовидных структур. Такая модель представляет средства для обхода деревьев в поисках необходимых данных. Примеры: файловая система, JSON, XML.
  3. Сетевая модель - данные представлены в виде графа. Сетевая БД состоит из набора элементов определенного типа и набора определенного типа связей между этими элементами. Примеры: сеть, стандарт CODASYL.

Данные структуры активно используются и по сей день. Особенно в задачах как человеко-машинного, так и межмашинного взаимодействия. Мы вернемся к примерам такого взаимодействия чуть позже.

Ситуация коренным образом поменялась (причем на следующие 50 лет), после выхода в свет знаменитой работы Эдгара Кодда1. Он предложил новую, реляционную модель данных, которая приобрела большую популярность и теперь является доминирующей на рынке СУБД.

Глоссарий

Тип данных – множество значений и операций над ними.

Знания – структурированная информация.

Данные – знания, представленные в удобном для хранения и обработки виде.

База данных – это интегрированная совокупность структурированных и взаимосвязанных данных, организованная по определенным правилам, которые предусматривают общие принципы описания, хранения и обработки данных. Обычно база данных создается для предметной области.

Модель данных – наборы принципов, которые определяют организацию логической структуры хранения данных в базе, называются

Вопросы

  1. В чем преимущества, ставшие причиной такой популярности реляционной модели?

Задания

  1. Представьте, вам необходимо реализовать свою СХД (систему хранения данных). Опишите, как вы реализуете хранение данных. Например, у вас есть следующие данные: Марки автомобилей (name), Модели автомобилей (name, make), Автомобили (make, model, VIN), Владельцы (name, surname, car).
    • Сколько у вас будет файлов и папок?
    • Как будут называться файлы и папки?
    • Как будут устроены файлы и папки?
    • Чем обусловлены ваши решения?
1. "A Relational Model of Data for Large Shared Data Banks", 1970

results matching ""

    No results matching ""