Введение в базы данных. Реляционное проектирование Затрагиваемые темы Проблемы, решаемые хранением данных в СУБД Проблемы, решаемые хранением данных в.

Презентация:



Advertisements
Похожие презентации
Базы данных Михайлова Елена Георгиевна, мат.-мех. ф-т, кафедра информатики, доцент.
Advertisements

Реляционная модель – это особый метод рассмотрения данных, содержащий данные в виде таблиц, способов работы и манипуляции с ними в виде связей. структура,
Разработка баз данных предприятий ЯОК Саровский физико-технический институт.
Модуль 1. Математические основы баз данных и знаний.
Реляционная модель данных Разработана Е.Ф.Коддом (E.F.Codd) в 1970 г.
Информационные системы. Базы данных. Информационная система – любая система обработки информации (шир)
Тема 2. Концептуальное проектирование. Лекция 1. Уровни моделей и этапы проектирования.
Учебная дисциплина «Базы данных» для студентов специальности Бизнес-информатика (бакалавриат) ЛЕКЦИЯ 3 ВВЕДЕНИЕ В РЕЛЯЦИОННУЮ МОДЕЛЬ ДАННЫХ Вопрос.
База данных – основа информационной системы. База данных (БД) – это совокупность специальным образом организованных данных, хранимых в памяти вычислительной.
Базы данных в электронных таблицах. Что называется базой данных? Какие примеры баз данных вы знаете? Какие существуют формы представления баз данных?
БАЗА ДАННЫХ – ОСНОВА ИНФОРМАЦИОННОЙ СИСТЕМЫ ТЕХНОЛОГИЯ ИСПЛЬЗОВАНИЯ И РАЗРАБОТКА ИНФОРМАЦИОННЫХ СИСТЕМ.
Технология хранения, поиска и сортировки информации БАЗЫ ДАННЫХ Козлова Наталья Викторовна, учитель МАОУ Чигиринской СОШ.
Реляционные базы данных N-арное отношение – подмножество декартова произведения N множеств возможных значений (доменов, типов данных, атрибутов) Изображение.
Даталогическое проектирование. 1. Представление концептуальной модели средствами модели данных СУБД Общие представления о моделях данных СУБД С одной.
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ) КАФЕДРА ИКТ Дипломный проект на тему: Студент: Руководитель проекта:
Представление предметной области. Методы представления предметной области. Модель сущность-связь. Инфологическое описание предметной области.
Архитектура и обеспечение систем базы данных. СУБД.
Структуры базы данных Иерархическая сетевая реляционная наиболее распространенная.
БАЗЫ ДАННЫХ ( ВВЕДЕНИЕ ). База данных это информационная модель, позволяющая упорядоченно хранить данные о группе объектов, обладающих одинаковым набором.
Опыт реализации отказоустойчивого сервера приложений и хранилища данных на базе СУБД ЛИНТЕР Михаил Ермаков, Дмитрий Мухоедов, РЕЛЭКС.
Транксрипт:

Введение в базы данных. Реляционное проектирование Затрагиваемые темы Проблемы, решаемые хранением данных в СУБД Проблемы, решаемые хранением данных в СУБД Виды знаний по БД в контексте IT-процессов Виды знаний по БД в контексте IT-процессов Реляционные таблицы, ключи, внешние ключи Реляционные таблицы, ключи, внешние ключи Ссылочная целостность. Связи 1:N и M:N Ссылочная целостность. Связи 1:N и M:N Диаграммное представление структуры БД, CASE Диаграммное представление структуры БД, CASE «Рецепты» качественного проектирования РБД «Рецепты» качественного проектирования РБД

Введение: Проблемы хранения данных Особенности информационных систем Особенности информационных систем Много пользователей, работающих одновременно Много пользователей, работающих одновременно Большой объем данных – нельзя все загрузить в ОЗУ Большой объем данных – нельзя все загрузить в ОЗУ Данные разнородны и имеют много разнообразных связей Данные разнородны и имеют много разнообразных связей Одни данные имеют различные представления userам Одни данные имеют различные представления userам Проблемы хранения данных в файлах Проблемы хранения данных в файлах Дублирование, самосогласованное изменение Дублирование, самосогласованное изменение Низкая скорость доступа к данным (поиск, изменение) Низкая скорость доступа к данным (поиск, изменение) Сложность программирования: нужно помнить, что где Сложность программирования: нужно помнить, что где Возможности систем управления базами данных Возможности систем управления базами данных Разделение логической и физической структуры данных Разделение логической и физической структуры данных Унифицированые интерфейсы доступа (языки, протоколы) Унифицированые интерфейсы доступа (языки, протоколы) Хранение без дублирования + логическая целостность БД Хранение без дублирования + логическая целостность БД Оптимизация скорости (буферизация, индексирование) Оптимизация скорости (буферизация, индексирование) Многопользовательская работа: транзакции, привилегии.. Многопользовательская работа: транзакции, привилегии.. Журнализация изменений и восстановление после сбоев Журнализация изменений и восстановление после сбоев

Введение: процесс разработки Место знаний по БД в процессе разработки ИС Место знаний по БД в процессе разработки ИС Анализ бизнес-процессов, отн. к ИС. Бизнес-требования Анализ бизнес-процессов, отн. к ИС. Бизнес-требования Формулировка технических требований //+словарь терминов Формулировка технических требований //+словарь терминов Анализ и проектирование Анализ и проектирование Разработка архитектуры //нужно знать возможности выбр. СУБД Разработка архитектуры //нужно знать возможности выбр. СУБД Проектирование БД (модель лог.уровня, поведение БД) //важно Проектирование БД (модель лог.уровня, поведение БД) //важно Проектирование приложений (структура модулей, UI, etc.) Проектирование приложений (структура модулей, UI, etc.) Реализация //программисты пишут SQL, знают оптимизацию SQL Реализация //программисты пишут SQL, знают оптимизацию SQL Документирование, верификация, внедрение, поддержка.. //администраторы выполняют SQL-скрипты, внедренцы анализируют возникающие проблемы на SQL, support включает SQL-патчи и т.д. Документирование, верификация, внедрение, поддержка.. //администраторы выполняют SQL-скрипты, внедренцы анализируют возникающие проблемы на SQL, support включает SQL-патчи и т.д. Уровни моделей данных Уровни моделей данных Концептуальный (семантический, etc.) //обсуждаем с userами Концептуальный (семантический, etc.) //обсуждаем с userами Логический //зависит от подхода к проектированию = типа СУБД Логический //зависит от подхода к проектированию = типа СУБД Физический //зависит от СУБД, часто касается администраторов БД Физический //зависит от СУБД, часто касается администраторов БД

Сущность (Entity) – таблица – отношение //класс Сущность (Entity) – таблица – отношение //класс Экз. сущности – строка – кортеж //объект Экз. сущности – строка – кортеж //объект Сущность – схема (заголовок) табл. – схема отнош. Сущность – схема (заголовок) табл. – схема отнош. Атрибут (Attribute) – столбец – атрибут //поле Атрибут (Attribute) – столбец – атрибут //поле Свойства атрибута: обязательность, вид (простой, сущность, множество простых, множество сущностей) Свойства атрибута: обязательность, вид (простой, сущность, множество простых, множество сущностей) В реляционной модели вид только простой; атрибут имеет тип и домен = {тип, ограничения на значение атрибута} В реляционной модели вид только простой; атрибут имеет тип и домен = {тип, ограничения на значение атрибута} Ключ – [min набор] атрибут[ов], по значению которого можно однозначно найти нужный экземпляр сущности. В РБД 1 из ключей и называется первичным (на практике состоит из 1 атрибута, называют идентификатором) Ключ – [min набор] атрибут[ов], по значению которого можно однозначно найти нужный экземпляр сущности. В РБД 1 из ключей и называется первичным (на практике состоит из 1 атрибута, называют идентификатором) Связь (Relationship) – внешний ключ (foreign key) Связь (Relationship) – внешний ключ (foreign key) Виды связей: 1 ко многим, 1 к одному, многие ко многим Виды связей: 1 ко многим, 1 к одному, многие ко многим Свойства связей: required, identifying; ref. integrity actions Свойства связей: required, identifying; ref. integrity actions Понятия реляционных моделей

Реляционная таблица

Реляционная модель Структурная часть, свойства реляционной таблицы Структурная часть, свойства реляционной таблицы РБД представляет собой набор таблиц, таких, что: РБД представляет собой набор таблиц, таких, что: Ячейки столбца содержат однотипные данные (домен) Ячейки столбца содержат однотипные данные (домен) Знач. в ячейках атомарны (простой тип, не множество) Знач. в ячейках атомарны (простой тип, не множество) Столбцы поименованы, столбцы и строки неупорядоче- ны //на практике столбцы упорядочены (performance!) Столбцы поименованы, столбцы и строки неупорядоче- ны //на практике столбцы упорядочены (performance!) Целостностная часть реляционной модели Целостностная часть реляционной модели Целостность сущности: существует ключ Целостность сущности: существует ключ Ссылочная целостность (referential integrity): строка в parent: её ID = внешний ключ в child (если он не null) Ссылочная целостность (referential integrity): строка в parent: её ID = внешний ключ в child (если он не null) Пользовательские ограничения целостности (CHECK): логические условия на значения 1 или нескольких атрибутов Пользовательские ограничения целостности (CHECK): логические условия на значения 1 или нескольких атрибутов Целостность обеспечивается СУБД (запрет вставки/изменения, каскадное удаление, обnullение,..) Целостность обеспечивается СУБД (запрет вставки/изменения, каскадное удаление, обnullение,..) Манипуляционная часть = набор операций (SQL) Манипуляционная часть = набор операций (SQL)

Пример структуры РБД на одной из распространенных нотаций типа Entity-Relationship – IDEF1X (нарисовано в CASE-средстве ERwin) Диаграммное представление модели Концептуальная модель (сущности, связи) Реляционная модель (таблицы, ключи, типы данных)

Реляционное проектирование Простейшие «рецепты» реляц. проектирования Простейшие «рецепты» реляц. проектирования Доп. неизменяемый атрибут - PK ( _ID int) Доп. неизменяемый атрибут - PK ( _ID int) Связи 1:1 и 1:N – внешний ключ, N:M – доп. таблица Связи 1:1 и 1:N – внешний ключ, N:M – доп. таблица Атрибуты с фикс. числом значений => отд. таблица +FK Атрибуты с фикс. числом значений => отд. таблица +FK НФ: меньше зависимостей в таблице, больше таблиц НФ: меньше зависимостей в таблице, больше таблиц Основные причины отхода от реляционной модели Основные причины отхода от реляционной модели Ограничения модели: атомарность, замена атрибутов- объектов вн. ключом, нет наследования таблиц, типов Ограничения модели: атомарность, замена атрибутов- объектов вн. ключом, нет наследования таблиц, типов Несоответствие таблиц ОО языкам программирования Несоответствие таблиц ОО языкам программирования CASE-средства //например, ERwin (проектирование РБД) CASE-средства //например, ERwin (проектирование РБД) Диаграммы для задач анализа, проектирования и др. Диаграммы для задач анализа, проектирования и др. Связь с реализацией: forward & reverse engineering Связь с реализацией: forward & reverse engineering