BazyDannykh_Teoria

Содержание

Слайд 2

БАЗЫ ДАННЫХ. ИНФОРМАЦИОННЫЕ СИСТЕМЫ

© К.Ю. Поляков, 2007-2008

Тема 1. Информационные системы

БАЗЫ ДАННЫХ. ИНФОРМАЦИОННЫЕ СИСТЕМЫ © К.Ю. Поляков, 2007-2008 Тема 1. Информационные системы

Слайд 3

Определения

База данных (БД) – это хранилище данных о некоторой предметной области, организованное

Определения База данных (БД) – это хранилище данных о некоторой предметной области,
в виде специальной структуры.
Важно:
данные о некоторой области (не обо всем)
упорядоченные
Система управления базой данных (СУБД) – это программное обеспечение для работы с БД.
Функции:
поиск информации в БД
выполнение несложных расчетов
вывод отчетов на печать
редактирование БД

Слайд 4

Типы информационных систем

локальные ИС БД и СУБД находятся на одном компьютере.
файл-серверные БД

Типы информационных систем локальные ИС БД и СУБД находятся на одном компьютере.
находится на сервере сети (файловом сервере), а СУБД на компьютере пользователя.
клиент-серверные БД и основная СУБД находятся на сервере, СУБД на рабочей станции посылает запрос и выводит на экран результат.

Слайд 5

Локальные ИС

автономность (независимость)

с БД работает только один человек
сложно обновлять при большом количестве

Локальные ИС автономность (независимость) с БД работает только один человек сложно обновлять
пользователей
практически невозможно «стыковать» изменения, вносимые несколькими пользователями

Слайд 6

Файл-серверные ИС

несколько человек работают с одной базой

основную работу выполняют рабочие станции (РС),

Файл-серверные ИС несколько человек работают с одной базой основную работу выполняют рабочие
они должны быть мощными
для поиска строки на РС копируется вся БД – нагрузка на сеть
слабая защита от взлома (только на РС)
проблемы при одновременном изменении с разных РС

Слайд 7

Клиент-серверные ИС

СУБД-клиент

СУБД-клиент

СУБД-клиент

основную работу выполняет сервер
проще модернизация (только сервер)
по сети идут только нужные

Клиент-серверные ИС СУБД-клиент СУБД-клиент СУБД-клиент основную работу выполняет сервер проще модернизация (только
данные
защита на сервере (сложнее взломать)
разделение доступа (очередь заданий)

запрос
на SQL

ответ

СУБД-сервер:
MS SQL Server
Oracle
MySQL
Firebird

SQL (Structured Query Language) – язык структурных запросов

сложность настройки
высокая стоимость ПО (тысячи $)

Слайд 8

БАЗЫ ДАННЫХ. ИНФОРМАЦИОННЫЕ СИСТЕМЫ

© К.Ю. Поляков, 2007-2008

Тема 2. Базы данных

БАЗЫ ДАННЫХ. ИНФОРМАЦИОННЫЕ СИСТЕМЫ © К.Ю. Поляков, 2007-2008 Тема 2. Базы данных

Слайд 9

Типы баз данных

табличные БД данные в виде одной таблицы
сетевые БД набор узлов,

Типы баз данных табличные БД данные в виде одной таблицы сетевые БД
в котором каждый может быть связан с каждым.
иерархические БД в виде многоуровневой структуры
реляционные БД (99,9%) набор взаимосвязанных таблиц

Слайд 10

Табличные БД

Модель – картотека
Примеры:
записная книжка
каталог в библиотеке

самая простая структура
все другие типы БД

Табличные БД Модель – картотека Примеры: записная книжка каталог в библиотеке самая
используют таблицы

во многих случаях – дублирование данных:

Слайд 11

Табличные БД

Количество полей определяется разработчиком и не может изменяться пользователем.
Любое поле должно

Табличные БД Количество полей определяется разработчиком и не может изменяться пользователем. Любое
иметь уникальное имя.
Поля могут иметь различный тип:
строка символов (длиной до 255 символов)
вещественное число (с дробной частью)
целое число
денежная сумма
дата, время, дата и время
логическое поле (истина или ложь, да или нет)
многострочный текст (МЕМО)
рисунок, звук или другой объект (объект OLE)
Поля могут быть обязательными для заполнения или нет.
Таблица может содержать сколько угодно записей (это количество ограничено только объемом диска); записи можно добавлять, удалять, редактировать, сортировать, искать.

Слайд 12

Ключевое поле (ключ таблицы)

Ключевое поле (ключ) – это поле (или комбинация полей),

Ключевое поле (ключ таблицы) Ключевое поле (ключ) – это поле (или комбинация
которое однозначно определяет запись.
В таблице не может быть двух записей с одинаковым значением ключа.

Могут ли эти данные быть ключом?
фамилия
имя
номер паспорта
номер дома
регистрационный номер автомобиля
город проживания
дата выполнения работы
марка стиральной машины

Слайд 13

Сетевые БД

Сетевая БД – это набор узлов, в которых каждый может быть

Сетевые БД Сетевая БД – это набор узлов, в которых каждый может
связан с каждым (схема дорог).

лучше всего отражает структуру некоторых задач (сетевое планирование в экономике)

сложно хранить информацию о всех связях
запутанность структуры

Слайд 14

Иерархические БД

Иерархическая БД – это набор данных в виде многоуровневой структуры (дерева).

Иерархические БД Иерархическая БД – это набор данных в виде многоуровневой структуры (дерева).

Слайд 15

Иерархические БД

Прайс-лист:

Продавец (уровень 1)

Товар (уровень 2)

Модель (уровень 4)

Цена (уровень 5)

Изготовитель (уровень 3)

$306

$312

S93

X93B

Sony

Phillips

Samsung

Мониторы

Принтеры

Кей

Иерархические БД Прайс-лист: Продавец (уровень 1) Товар (уровень 2) Модель (уровень 4)

Слайд 16

Иерархические БД

Приведение к табличной форме:

дублирование данных
при изменении адреса фирмы надо менять его

Иерархические БД Приведение к табличной форме: дублирование данных при изменении адреса фирмы
во всех строках
нет защиты от ошибок ввода оператора (Кей – Key), лучше было бы выбирать из списка

Слайд 17

БАЗЫ ДАННЫХ. ИНФОРМАЦИОННЫЕ СИСТЕМЫ

© К.Ю. Поляков, 2007-2008

Тема 3. Реляционные базы данных

БАЗЫ ДАННЫХ. ИНФОРМАЦИОННЫЕ СИСТЕМЫ © К.Ю. Поляков, 2007-2008 Тема 3. Реляционные базы данных

Слайд 18

Реляционные БД

1970-е гг. Э. Кодд, англ. relation – отношение.
Реляционная база данных –

Реляционные БД 1970-е гг. Э. Кодд, англ. relation – отношение. Реляционная база
это набор простых таблиц, между которыми установлены связи (отношения) с помощью числовых кодов.

Слайд 19

Реляционные БД

нет дублирования информации;
при изменении адреса фирмы достаточно изменить его только

Реляционные БД нет дублирования информации; при изменении адреса фирмы достаточно изменить его
в таблице Продавцы;
защита от неправильного ввода: можно выбрать только фирму, которая есть в таблице Продавцы;
механизм транзакций: любые изменения вносятся в базу только тогда, когда они полностью завершены.

сложность структуры (не более 40-50 таблиц);
при поиске надо обращаться к нескольким таблицам;
нужно поддерживать целостность: при удалении фирмы-продавца надо удалять все связанные записи (автоматически, каскадное удаление).

Слайд 20

Связи между таблицами

Один к одному («1-1») – одной записи в первой таблице

Связи между таблицами Один к одному («1-1») – одной записи в первой
соответствует ровно одна запись во второй. Применение: выделение часто используемых данных.

1

1

Один ко многим («1- ∞») – одной записи в первой таблице соответствует сколько угодно записей во второй.

1


товары

прайс-лист

Слайд 21

Связи между таблицами

Многие ко многим («∞ - ∞») – одной записи в

Связи между таблицами Многие ко многим («∞ - ∞») – одной записи
первой таблице соответствует сколько угодно записей во второй, и наоборот.

Реализация – через третью таблицу и две связи «1-∞».

расписание

учителя

предметы





1

1

Слайд 22

Нормализация базы данных

Нормализация – это разработка такой структуры БД, в которой нет

Нормализация базы данных Нормализация – это разработка такой структуры БД, в которой
избыточных данных и связей.

Любое поле должно быть неделимым.

Не должно быть полей, которые обозначают различные виды одного и того же, например, товаров.


1

Слайд 23

Нормализация базы данных

Любое поле должно зависеть только от ключа (ключ – это

Нормализация базы данных Любое поле должно зависеть только от ключа (ключ –
поле или комбинация полей, однозначно определяющая запись).

Не должно быть полей, которые могут быть найдены с помощью остальных.

товары

зависит не только от названия товара!

прайс-лист

Слайд 24

Поиск в базах данных

Линейный поиск – это перебор всех записей до тех

Поиск в базах данных Линейный поиск – это перебор всех записей до
пор, пока не будет найдена нужная.

Иванов?

1024 сравнения!

данные не надо предварительно готовить

низкая скорость поиска

Слайд 25

Двоичный поиск

Разделить область поиска на две равные части.
Определить, в какой половине находится

Двоичный поиск Разделить область поиска на две равные части. Определить, в какой
нужный объект.
Перейти к шагу 1 для этой половины.
Повторять шаги 1-3 пока объект не будет «пойман».

Слайд 26

Поиск в базах данных

Двоичный поиск в БД – требует предварительной сортировки.

Иванов?

записи надо

Поиск в базах данных Двоичный поиск в БД – требует предварительной сортировки.
отсортировать по нужному полю
можно использовать только для одного поля

быстрый поиск

11 сравнений!

Слайд 27

Поиск по индексам

Индекс – это вспомогательная таблица, которая предназначена для быстрого поиска

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

Таблица

Индексы:
по дате

по товару

по количеству

Имя файла: BazyDannykh_Teoria.pptx
Количество просмотров: 20
Количество скачиваний: 0