
- •Історія розвитку сбд.
- •Традиційні файлові системи. Переваги і недоліки.
- •Системи з використанням баз даних. Компоненти сбд. Переваги і недоліки.
- •5_ Системи керування базами даних. Компоненти. Функції.
- •Компоненты сбд
- •1. Зберігання, вилучення і обновлення даних
- •2. Каталог, який доступний кінцевим користувачам
- •3. Управління транзакціями
- •6_ Поняття бд. Об’єкти і зв’язки. Властивості.
- •Розподіл обов’язків в сбд. Ад і абд.
- •7_ Архітектура сбд ansi/sparc. Три рівні. Відображення. Трехуровневая архитектура ansi-sparc
- •3.5 Концептуальный уровень
- •3.6 Внутренний уровень
- •3.7 Отображения
- •3.8 Доступ к данным в трехуровневой архитектуре
- •12_ Архітектура сбд ansi/sparc. Мови баз даних. Ddl. Dml. 4gl.
- •Языки баз данных.
- •Процедурний
- •Непроцедурний
- •13_ Архітектура клієнт-сервер. Розподілена обробка. Архитектура многопользовательских субд
- •Субд в архитектуре "клиент-сервер" Лекция 19. Архитектура "клиент-сервер"
- •19.1. Открытые системы
- •19.2. Клиенты и серверы локальных сетей
- •19.3. Системная архитектура "клиент-сервер"
- •19.4. Серверы баз данных
- •19.4.1. Принципы взаимодействия между клиентскими и серверными частями
- •19.4.2. Преимущества протоколов удаленного вызова процедур
- •19.4.3. Типичное разделение функций между клиентами и серверами
- •19.4.4. Требования к аппаратным возможностям и базовому программному обеспечению клиентов и серверов
- •14_ Ранні підходи в реалізації бд. Бд на інвертованих списках. Ієрархічні та мереживі бд. Модель инвертированных списков
- •Реляційна бд. Властивості реляційних бд.
- •Реляційна модель. Домени. Оператори.
- •2. Реляционная модель данных
- •2.1. Понятие модели данных
- •Реляційна модель. Відношення. Типи відношень.
- •Реляційна модель. Класифікація обмежень цілісності.
- •Реляційна модель. Потенційні ключі.
- •Реляційне числення. Числення доменів. (самостійно)
- •5.2.3. Реляционное исчисление доменов
- •Мова sql. Запит на оновлення. Використання співвіднесених запитів в запитах на оновлення.
- •Мова sql. Запит на знищення. Використання підзапитів в запитах на знищення.
- •Мова sql. Запит на додавання. Додавання результатів запиту.
- •Мова sql. Об’єднання таблиць. Використання пропозиції union.
- •Мова sql. Використання пропозицій any, all, some.
- •Мова sql. Використання пропозиції exists.
- •Мова sql. Співвіднесений запит на вибірку.
- •Мова sql. Запит на вибірку із підзапитом.
- •Мова sql. Запит на вибірку до кількох таблиць. З’єднання таблиць. Типи з’єднань.
- •Мова sql. Запит на вибірку. Агрегатні функції
- •Історія розвитку
Історія розвитку сбд.
Як вже згадувалося в попередньому розділі, попередницями СУБД були файлові системи. Проте поява СУБД не привела до їх повного зникнення: для виконання деяких спеціалізованих задач подібні файлові системи використовуються дотепер. Крім того, файлові системи можуть використовуватися також СУБД для вирішення задач зберігання даних і доступу до них.
В середині 60-х років корпорація IBM спільно з фірмою NAA (North American Aviation, в даний час - Rockwell International) розробили першу СУБД - ієрархічну систему IMS (Information Management System). Не дивлячись на те, що IMS є найпершою зі всіх комерційних СУБД, вона дотепер залишається основною ієрархічною СУБД, що використовується на більшості крупних мейнфреймов.
Іншим помітним досягненням середини 60-х років була поява системи IDS (Integrated Data Store) фірми General Electric. Розвиток цієї системи привів до створення нового типу систем управління базами даних - мережних СУБД, що зробило істотний вплив на інформаційні системи того покоління. Мережна СУБД створювалася для представлення складніших взаємозв'язків між даними, ніж ті, які можна було моделювати за допомогою ієрархічних структур, і послужили основою для розробки перших стандартів БД. Для створення таких стандартів в 1965 році на конференції CODASYL (Conference on Data Systems Languages) була сформована робоча група List Processing Task Force, перейменована в 1967 році в групу Data Base Task Group (DBTG). В компетенцію групи DBTG входило визначення специфікацій середовища, яке допускало б розробку баз даних і управління даними. Повний варіант звіту цієї групи був опублікований у в 1971 році і містив наступні твердження:
Сетевая схема - это логическая организация всей базы данных в целом (с точки зрения АДБ), которая включает определение имени базы данных, типа каждой записи и компонентов записей каждого типа.
Подсхема - это часть базы данных, видимая конкретными пользователями или приложениями.
Язык управления данными - инструмент для определения характеристик и структуры данных, а также для управления ими.
Группа DBTG также предложила стандартизировать три различных языка:
Язык определения данных DDL для схемы, который позволит АБД описать ее.
Язык определения данных (также DDL) для подсхемы, который позволит определять в приложениях те части базы данных, доступ к которым будет необходим.
Язык манипулирования данными DML, предназначенный для управления данными.
Не дивлячись на те що цей звіт офіційно не був схвалений Національним Інститутом Стандартизації США (American National Standards Institute - ANSI), велика кількість систем була розроблена в повній відповідності з цими пропозиціями групи DBTG. Тепер вони називаються CODASYL-системами, або DBTG-системами. CODASYL-системи і системи на основі ієрархічних підходів є СУБД першого покоління. Проте цим двом моделям властиві приведені нижче недоліки.
Даже для выполнения простых запросов с использованием переходов и доступом к определенным записям необходимо создавать достаточно сложные программы.
Независимость от данных существует лишь в минимальной степени.
Отсутствуют теоретические основы.
В 1970 році Е. Ф. Кодд, працюючий в корпорації IBM, опублікував статтю про реляційну модель даних, що дозволяла усунути недоліки колишніх моделей. Вслід за цим з'явилася безліч експериментальних реляційних СУБД, а перші комерційні продукти з'явилися в кінці 70-х - початку 80-х років. Особливо слід зазначити проект System R, розроблений в корпорації IBM в кінці 70-х років (Astrahan et al., 1976). Цей проект був задуманий з метою довести практичність реляційної моделі, що досягалося за допомогою реалізації передбачених нею структур даних і необхідних функціональних можливостей. На основі цього проекту були одержані найважливіші результати.
Был разработан структурированный язык запросов SQL, который с тех пор стал стандартным языком любых реляционных СУБД.
В 80-х годах были созданы различные коммерческие реляционные СУБД - например, DB2 или SQL/DS корпорации IBM, Oracle корпорации Oracle , др.
В даний час існує декілька сотень різних реляційних СУБД для мейнфреймов і персональних ЕОМ. Як приклад розрахованих на багато користувачів СУБД може служити система CA-OpenIngres фірми Computer Associates і система Informix фірми Informix Software, Inc. Прикладами реляційних СУБД для персональних комп'ютерів є Access і FoxPro фірми Microsoft, Paradox і Visual dBase фірми Borland, а також R-Base фірми Microrim. Реляційні СУБД відносяться до СУБД другого покоління. Проте реляційна модель також володіє деякими недоліками - зокрема, обмеженими можливостями моделювання. Для вирішення цієї проблеми був виконаний великий об'єм дослідницької роботи. В 1976 році Чен запропонував модель "єство-зв'язок (Entity-Relationship model - ER-модель) ", яка в даний час стала основою методології концептуального проектування баз даних і методології логічного проектування реляційних баз даних. В 1979 році Кодд зробив спробу усунути недоліки власної основоположної роботи і опублікував розширену версію реляційної моделі - RM/T (1979), потім ще одну версію - RM/V2 (1990). Спроби створення моделі даних, що дозволяє більш точно описувати реальний мир, нестрого називають семантичним моделюванням даних (semantic data modeling).
У відповідь на все зростаючу складність додатків баз даних з'явилися дві нові системи: об'єктно-орієнтовані СУБД, або ОО СУБД (Object-Oriented DBMS - OODBMS), і об'єктно-реляційні СУБД, або ОР СУБД (Object-Relational DBMS - ORDBMS). Спроби реалізації подібних моделей є СУБД третього покоління.
В СРСР в середині 70-х років була розроблена інформаційно-пошукова система, основу якої складала універсальна об'єктно-орієнтована ієрархічна СУБД, що знайшла широке вживання при рішенні задач проектування і управління і що передбачила багато більш пізніх розробок такого роду.