Распределенные БД: Эволюция технологий управления данными

РАСПРЕДЕЛЕННЫЕ БАЗЫ ДАННЫХ,
ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ВЫЧИСЛЕНИЯ, ГРИД И
ОБЛАЧНЫЕ ТЕХНОЛОГИИ
СУБД
ЭВОЛЮЦИЯ ТЕХНОЛОГИЙ В
УПРАВЛЕНИИ ДАННЫМИ
Лекция 1
Контакты и литература
Желенкова Ольга Петровна
[email protected], http://www.sao.ru/hq/zhe/miscRU.html

Дейт К.Дж., Введение в системы баз данных, 2001

Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных.
Полный курс, 2003

Кузнецов С.Д. Основы баз данных. Учебное пособие, 2007

Бурлаков П.В., Петров В.Ю. Введение в системы баз данных. Учебное
пособие, 2010.

Грей Дж. Управление данными: прошлое, настоящее и будущее.
Системы Управления Базами Данных # 3/1998

Кайт Т. ORACLE для профессиналов, 2003
Управление данными
0 : менеджеры записей (4000 г. до н. э. – 1900)
1 : менеджеры записей (1900-1955) перфокарты
2 : программируемое оборудование обработки записей (1955-1970)
3 : оперативные сетевые базы данных (1965-1980)
4 : реляционные базы данных и архитектура клиент-сервер (1980-1995)
5: мультимедийные базы данных (1995-...)
6: NoSQL (2000-…)
Информационные системы. История
 Вычисления
 Системы управления файлами
 Информационные системы
Предпосылки появления баз данных:
 необходимость хранить и обрабатывать большой
объем данных
 совместное использование информации
 внешние носители
Базы данных: термины
Информация – сведения о каком-либо событии, объекте или процессе.
Данные – информация, представленная в определенном виде, позволяющем
автоматизировать ее сбор, хранение и дальнейшую обработку. Для компьютерных
технологий данные — в виде, удобном для хранения, обработки на ЭВМ, а также
для передачи по каналам связи.
Управление данными – совокупность функций для требуемого представления данных,
их накопления и хранения, обновления, удаления, поиска по заданному критерию и
выдачи данных. [ГОСТ 20886-85]
База данных (БД) – поименованная совокупность взаимосвязанных
структурированных данных, которая отражает состояние объектов и их отношений
в рассматриваемой предметной области, причем они организованы так, чтобы
обеспечить независимость данных от программ обработки.
Предметная область – информация о части реального мира, подлежащая изучению с
целью организации управления и автоматизации.
Система управления базами данных (СУБД) – это совокупность программ и
языковых средств, предназначенных для управления данными в базе данных,
ведения базы данных и обеспечения взаимодействия её с прикладными
программами [ГОСТ 20886-85].
Требования к реляционным СУБД
Э.Ф. Кодд предложил схему представления данных в виде таблиц,
называемых отношениями (relations), и охарактеризовал требования к
реляционным СУБД (Dr. E. F. Codd’s 12 rules for defining a fully relational
database, 1985 г.):
1.
реляционная СУБД должна быть способна полностью управлять
базой данных через ее реляционные возможности;
2.
информационное правило — вся информация должна
определяться строго как значения в таблицах;
3.
гарантированный доступ
4.
поддержка пустых значений (null value);
5.
доступ к словарю данных в терминах реляционной модели
6.
единственный язык запросов, который позволяет выполнять
все операции работы к данным
Требования к реляционным СУБД (по Кодду)
7.
8.
9.
10.
11.
12.
13.
поддержка обновляемых представлений (View Updating Rule).
Операции вставки, модификации и удаления данных должны
поддерживаться по отношению к любому множеству строк.
физическая независимость данных.
логическая независимость данных.
независимость контроля целостности. СУБД должна
выполнять проверку заданных ограничений целостности и
автоматически поддерживать целостность данных.
независимость от распределенности.
согласование языковых уровней. Если используется
низкоуровневый язык доступа к данным, он не должен
игнорировать правила безопасности и целостности, которые
поддерживаются языком более высокого уровня.
Требования к СУБД
поддержка целостности данных или согласованности
данных
 согласованное хранение независимых наборов данных.
 извлечение данных с помощью простого языка запросов
 надежное хранение данных несмотря на возможность
сбоя в программных или технических средствах
 одновременный доступ к данным нескольким
пользователям

ACID -требования к транзакционной системе
(Дж. Грей, конец 70-х годов)
Atomicity — атомарность - никакая транзакция
не будет зафиксирована в системе частично.
Либо все, либо ничего (rollback);
 Consistency — согласованность при нормальном
завершении транзакции сохраняется
согласованность базы данных.
 Isolation — изолированность - во время
выполнения транзакции другие транзакции не
должны оказывать влияние на её результат.
Durability — надежность..

Основные функции СУБД:
управление данными во внешней памяти ;
 управление данными в оперативной памяти;
 управление транзакциями;
 журнализация изменений и восстановление
базы данных после сбоев;
 поддержание языков БД (язык определения
данных, язык манипулирования данными).

Компоненты системы баз данных
Прикладное программное обеспечение
Система управления базами данных
База
данных
Основным принципом организации базы данных является совместное
хранение данных и их описаний. Это отличает базу данных от любого другого
набора данных, хранящихся в ЭВМ.
БД содержит не только данные, всесторонне характеризующие деятельность в
предметной области, но и описания этих данных. Информацию о данных принято
называть "метаданными", т. е. "данными о данных". В совокупности описания
всех данных образуют словарь данных.
СУБД
Программные составляющие СУБД включают в себя ядро и
сервисные средства (утилиты).
Ядро СУБД – это набор программных модулей, необходимый и
достаточный для создания и поддержания БД, то есть универсальная
часть, решающая стандартные задачи по информационному
обслуживанию пользователей.
Сервисные программы предоставляют пользователям ряд
дополнительных возможностей и услуг, зависящих от описываемой
предметной области и потребностей конкретного пользователя.
Требования к современной СУБД
Масштабируемость.
Увеличение объема данных и обслуживание одновременных сеансов
работы пользователей без потери
Многоплатформенность.
независимость программных приложений и логической структуры для
хранения данных от программно-аппаратной платформы
Открытая архитектура. Современные ИВС не являются однородными,
поэтому современная СУБД должна поддерживать, помимо своих
интерфейсов еще и стандартные интерфейсы доступа к данным (ODBC,
JDBC).
Независимость от платформ
Операционные
системы
Оконные
менеджеры
−MS Windows
−X Motif
−Macintosh
−Другие
Сетевые протоколы
• TCP/IP
• LU6.2
• SPX/IPX
• OSI
• DECnet
• Другие
Оборудование
• Compaq
• Sun
• HP
• IBM
• Mac
• Другие
• OS/390
• TRU64
• Solaris
• AIX
• HP Unix
• NT
• Linux
• Другие
• NCR
• Pyramid
• Sequent
• Sun
• Intel
Независимость от архитектуры
Один
Процессор
Симметричная
многопроцес-сорная
архи-тектура (SMP)
Слабо сцепленные
процессоры
(кластер)
Можно использовать любые
вычислительные архитектуры.
Массивно
параллельный
компьютер (MPP)
Соглашения по стандартам
ORANGE
BOOK
ANSi
CEE
C
RRTT I
I
SQL
ON
TIIO
AAT
TTE OF
OF VVAA
LLIID
I CA
D
FF IC
FIPS
Комитеты
•
•
•
•
ANSI X3H2
X3H2.1 RDA
SQL Access Group
OMG
Стандарты баз данных
• FIPS 127-2
• ANSI X3-135.1992
Стандарты защиты данных:
• NCSC TDI C2, B1
• ITSEC F-C2/E3, F-B1/E3
Сетевые стандарты
• OSI
• DNSIX (MaxSix)
Межоперабельность
• IDAPI, ODBC
• TSIG
• X/Open
• DCE
• DDE
Разработка базы данных

Предметная область

Модель предметной области
(инфологическая модель)

Логическая модель данных

Физическая модель данных

Собственно база данных и
приложения