Современные информационные технологии

Содержание

Слайд 2

Дмитрий Владимирович Курбатский научный сотрудник НИЛБиЭМ БИ ТГУ, магистр биологии

Зоологический музей (к. 123)
Кафедра зоологии

Дмитрий Владимирович Курбатский научный сотрудник НИЛБиЭМ БИ ТГУ, магистр биологии Зоологический музей
позвоночных (к. 126)

Слайд 3

Сайт http://citforum.ru/ - множество околокомпьютерных статей по всем аспектам, в одном месте

Сайт http://citforum.ru/ - множество околокомпьютерных статей по всем аспектам, в одном месте
и без рекламы.
Сайт http://Сайт http://sql.ru – про базы данных и работу с ними.

☝ Студенту на заметку

Слайд 4

Блок 1

Общие понятия и классификация БД

Блок 1 Общие понятия и классификация БД

Слайд 5

База данных (БД)

организованная в соответствии с определёнными правилами и поддерживаемая в памяти

База данных (БД) организованная в соответствии с определёнными правилами и поддерживаемая в
компьютера совокупность данных, характеризующая актуальное состояние некоторой предметной области и используемая для удовлетворения информационных потребностей пользователей.
совокупность данных, хранимых в соответствии со схемой данных, манипулирование которыми выполняют в соответствии с правилами средств моделирования данных.
некоторый набор перманентных (постоянно хранимых) данных, используемых прикладными программными системами какого-либо предприятия.
совместно используемый набор логически связанных данных (и описание этих данных), предназначенный для удовлетворения информационных потребностей организации.
и даже
представленная в объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ) (Гражданский кодекс РФ, ст. 1260).

Слайд 6

Вариант необходимых свойств

БД хранится и обрабатывается в вычислительной системе.
Данные в БД логически

Вариант необходимых свойств БД хранится и обрабатывается в вычислительной системе. Данные в
структурированы (систематизированы).
БД включает схему, или метаданные, описывающие логическую структуру БД в формальном виде (в соответствии с некоторой метамоделью).

Слайд 7

Модель данных

аспект структуры
аспект манипуляции
аспект целостности
аспект защиты
аспект практической реализации и применения

Модель данных аспект структуры аспект манипуляции аспект целостности аспект защиты аспект практической реализации и применения

Слайд 8

Классификация БД …по модели данных

Иерархическая
Сетевая
Реляционная
Объектная и объектно-ориентированная
Объектно-реляционная
Функциональная
и др.

Классификация БД …по модели данных Иерархическая Сетевая Реляционная Объектная и объектно-ориентированная Объектно-реляционная Функциональная и др.

Слайд 9

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

Information Management System (IMS)
Time-Shared Date Management System (TDMS)
Mark IV Multi -

Иерархическая БД Information Management System (IMS) Time-Shared Date Management System (TDMS) Mark
Access Retrieval System
System 2000
InterSystems Caché
Google App Engine Datastore API
в операционных системах:
Серверы каталогов LDAP и Active Directory
иерархические файловые системы
Реестр Windows.

Слайд 10

Сетевая модель данных

СООБЗ Cerebrum
ИСУБД CronosPRO
dbVista
Caché
GT.M

Сетевая модель данных СООБЗ Cerebrum ИСУБД CronosPRO dbVista Caché GT.M

Слайд 11

Объектная и объектно-реляционные БД

Jasmine
Versant
POET

Объектная и объектно-реляционные БД Jasmine Versant POET

Слайд 12

…по среде постоянного хранения

Во вторичной памяти, или традиционная (conventional database)
средой постоянного хранения

…по среде постоянного хранения Во вторичной памяти, или традиционная (conventional database) средой
является периферийная энергонезависимая память
как правило жёсткий диск
в оперативной памяти лишь кеш и данные для текущей обработки
В оперативной памяти (in-memory database, memory-resident database, main memory database)
все данные на стадии исполнения находятся в оперативной памяти.
В третичной памяти (tertiary database)
средой постоянного хранения является отсоединяемое от сервера устройство массового хранения
как правило на основе магнитных лент (в прошлом) или оптических дисков
во вторичной памяти сервера хранится лишь каталог данных третичной памяти, файловый кеш и данные для текущей обработки; загрузка же самих данных требует специальной процедуры

Слайд 13

…по содержимому

Географическая
Историческая
Научная
Мультимедийная
и др.
в частности,
каталоги музеев и коллекций
Зоомузей ТГУ
ИСиЭЖ СО РАН

…по содержимому Географическая Историческая Научная Мультимедийная и др. в частности, каталоги музеев

Слайд 14

…по степени распределённости

Централизованная
или сосредоточенная (centralized database)
БД, полностью поддерживаемая на одном компьютере.
Распределённая
(distributed database)
БД,

…по степени распределённости Централизованная или сосредоточенная (centralized database) БД, полностью поддерживаемая на
составные части которой размещаются в различных узлах компьютерной сети в соответствии с каким-либо критерием.
Бывает:
Неоднородная (heterogeneous distributed database): фрагменты распределённой БД в разных узлах сети поддерживаются средствами более одной СУБД
Однородная (homogeneous distributed database): фрагменты распределённой БД в разных узлах сети поддерживаются средствами одной и той же СУБД.
Фрагментированная, или секционированная (partitioned database): методом распределения данных является фрагментирование (партиционирование, секционирование), вертикальное или горизонтальное.
Тиражированная (replicated database): методом распределения данных является тиражирование (репликация).

Слайд 15

…по динамике данных

Пространственная
spatial database
БД, в которой поддерживаются пространственные свойства сущностей предметной области.
в

…по динамике данных Пространственная spatial database БД, в которой поддерживаются пространственные свойства
ГИС
Временная, или темпоральная
temporal database
БД, в которой поддерживается какой-либо аспект времени, не считая времени, определяемого пользователем.
Пространственно-временная
spatial-temporal database
БД, в которой одновременно поддерживается одно или более измерений в аспектах как пространства, так и времени.
Циклическая
round-robin database
БД, объём хранимых данных которой не меняется со временем, поскольку в процессе сохранения данных одни и те же записи используются циклически.

Слайд 16

…по размеру

маленькие
побольше
ещё больше
большие (терабайты)
сверхбольшие (петабайты)

…по размеру маленькие побольше ещё больше большие (терабайты) сверхбольшие (петабайты)

Слайд 17

СУБД

Систе́ма управле́ния ба́зами да́нных
database management system (DBMS)
– совокупность программных и лингвистических средств

СУБД Систе́ма управле́ния ба́зами да́нных database management system (DBMS) – совокупность программных
общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.

Слайд 18

Функции СУБД

управление данными во внешней памяти (на дисках);
управление данными в оперативной памяти

Функции СУБД управление данными во внешней памяти (на дисках); управление данными в
с использованием дискового кэша;
журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
поддержка языков БД (язык определения данных, язык манипулирования данными).

Слайд 19

Компоненты СУБД

ядро
отвечает за управление данными во внешней и оперативной памяти, за журнализацию
процессор

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

Слайд 20

Классификации СУБД

По модели данных
Иерархические
Сетевые
Реляционные
Объектно-ориентированные
Объектно-реляционные
По степени распределённости
Локальные СУБД
Распределённые СУБД
По способу доступа к БД
Файл-серверные
Клиент-серверные
Встраиваемые

Классификации СУБД По модели данных Иерархические Сетевые Реляционные Объектно-ориентированные Объектно-реляционные По степени

Слайд 21

Связанные понятия

Информационная система
База знаний
Хранилище данных

Связанные понятия Информационная система База знаний Хранилище данных

Слайд 22

Блок 2

Реляционные БД
Компоненты БД, СУБД
Некоторые СУБД

Блок 2 Реляционные БД Компоненты БД, СУБД Некоторые СУБД

Слайд 23

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

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

Слайд 24

Ещё пример

Ещё пример

Слайд 25

Аспекты реляционных БД

структура данных (объекты данных)
целостность данных
обработка данных (операторы)

Аспекты реляционных БД структура данных (объекты данных) целостность данных обработка данных (операторы)

Слайд 26

Свойства реляционных БД

В таблице нет двух одинаковых строк.
Таблица имеет столбцы, соответствующие атрибутам

Свойства реляционных БД В таблице нет двух одинаковых строк. Таблица имеет столбцы,
отношения.
Каждый атрибут в отношении имеет уникальное имя.
Порядок строк в таблице произвольный.

Слайд 27

12 правил Кодда

правило 0: Основное правило (Foundation Rule): Реляционная СУБД должна быть

12 правил Кодда правило 0: Основное правило (Foundation Rule): Реляционная СУБД должна
способна полностью управлять базой данных, используя связи между данными:
Чтобы быть реляционной системой управления базами данных (СУБД), система должна использовать исключительно свои реляционные возможности для управления базой данных.
правило 1: Явное представление данных (The Information Rule):
Информация должна быть представлена в виде данных, хранящихся в ячейках. Данные, хранящиеся в ячейках, должны быть атомарны. Порядок строк в реляционной таблице не должен влиять на смысл данных.
правило 2: Гарантированный доступ к данным (Guaranteed Access Rule):
Доступ к данным должен быть свободен от двусмысленности. К каждому элементу данных должен быть гарантирован доступ с помощью комбинации имени таблицы, первичного ключа строки и имени столбца.
правило 3: Полная обработка неизвестных значений (Systematic Treatment of Null Values):
Неизвестные значения NULL, отличные от любого известного значения, должны поддерживаться для всех типов данных при выполнении любых операций. Например, для числовых данных неизвестные значения не должны рассматриваться как нули, а для символьных данных — как пустые строки.

Слайд 28

12 правил Кодда

правило 4: Доступ к словарю данных в терминах реляционной модели

12 правил Кодда правило 4: Доступ к словарю данных в терминах реляционной
(Active On-Line Catalog Based on the Relational Model):
Словарь данных должен сохраняться в форме реляционных таблиц, и СУБД должна поддерживать доступ к нему при помощи стандартных языковых средств, тех же самых, которые используются для работы с реляционными таблицами, содержащими пользовательские данные.
правило 5: Полнота подмножества языка (Comprehensive Data Sublanguage Rule):
Система управления реляционными базами данных должна поддерживать хотя бы один реляционный язык, который
(а) имеет линейный синтаксис,
(б) может использоваться как интерактивно, так и в прикладных программах,
(в) поддерживает операции определения данных, определения представлений, манипулирования данными (интерактивные и программные), ограничители целостности, управления доступом и операции управления транзакциями (begin, commit и rollback).
правило 6: Возможность модификации представлений (View Updating Rule):
Каждое представление должно поддерживать все операции манипулирования данными, которые поддерживают реляционные таблицы: операции выборки, вставки, модификации и удаления данных.
правило 7: Наличие высокоуровневых операций управления данными (High-Level Insert, Update, and Delete):
Операции вставки, модификации и удаления данных должны поддерживаться не только по отношению к одной строке реляционной таблицы, но по отношению к любому множеству строк.

Слайд 29

12 правил Кодда

правило 8: Физическая независимость данных (Physical Data Independence):
Приложения не должны

12 правил Кодда правило 8: Физическая независимость данных (Physical Data Independence): Приложения
зависеть от используемых способов хранения данных на носителях, от аппаратного обеспечения компьютеров, на которых находится реляционная база данных.
правило 9: Логическая независимость данных (Logical Data Independence):
Представление данных в приложении не должно зависеть от структуры реляционных таблиц. Если в процессе нормализации одна реляционная таблица разделяется на две, представление должно обеспечить объединение этих данных, чтобы изменение структуры реляционных таблиц не сказывалось на работе приложений.
правило 10: Независимость контроля целостности (Integrity Independence):
Вся информация, необходимая для поддержания целостности, должна находиться в словаре данных. Язык для работы с данными должен выполнять проверку входных данных и автоматически поддерживать целостность данных.
правило 11: Дистрибутивная независимость (Distribution Independence):
База данных может быть распределённой, может находиться на нескольких компьютерах, и это не должно оказывать влияние на приложения. Перенос базы данных на другой компьютер не должен оказывать влияния на приложения.
правило 12: Согласование языковых уровней (The Nonsubversion Rule):
Если используется низкоуровневый язык доступа к данным, он не должен игнорировать правила безопасности и правила целостности, которые поддерживаются языком более высокого уровня.

Слайд 30

Связанные термины и понятия

Отношение
Заголовок
Атрибут
Кортеж
Домен
Атом
Декомпозиция
Нормализация
Ключ
Индекс
Реляционная алгебра

Связанные термины и понятия Отношение Заголовок Атрибут Кортеж Домен Атом Декомпозиция Нормализация Ключ Индекс Реляционная алгебра

Слайд 31

Пример таблицы данных

Пример таблицы данных

Слайд 32

Нормализация

Первая нормальная форма (1NF)
Вторая нормальная форма (2NF)
Третья нормальная форма (3NF)
Нормальная форма Бойса

Нормализация Первая нормальная форма (1NF) Вторая нормальная форма (2NF) Третья нормальная форма
— Кодда (BCNF)
Четвёртая нормальная форма (4NF)
Пятая нормальная форма (5NF)
Доменно-ключевая нормальная форма (DKNF)
Шестая нормальная форма (6NF)

Слайд 33

Первые 3 формы нормализации в примерах: http://club.shelek.ru/viewart.php?id=177

☝ Студенту на заметку

Первые 3 формы нормализации в примерах: http://club.shelek.ru/viewart.php?id=177 ☝ Студенту на заметку

Слайд 34

Первая нормальная форма

Первая нормальная форма

Слайд 35

Первая нормальная форма

Первая нормальная форма

Слайд 36

Отношения relations
один к одному one-to-one
один ко многим one-to-many
многие ко многим many-to-many

Отношения relations один к одному one-to-one один ко многим one-to-many многие ко многим many-to-many

Слайд 37

Индексирование

Индексирование

Слайд 38

Ключи

По типу
первичный
вторичные
внешний
По строению
простой
составной
По происхождению
естественный
суррогатный

Ключи По типу первичный вторичные внешний По строению простой составной По происхождению естественный суррогатный

Слайд 39

Пример таблицы данных

Пример таблицы данных

Слайд 40

Блок 3

Компоненты СУБД
БД и программирование
Язык SQL

Блок 3 Компоненты СУБД БД и программирование Язык SQL

Слайд 41

Компоненты СУБД

Отношение (таблица)
Представление
Снимок
Хранимая процедура
Триггер
Курсор
Индекс
Запрос

Компоненты СУБД Отношение (таблица) Представление Снимок Хранимая процедура Триггер Курсор Индекс Запрос

Слайд 42

Дополнительные механизмы СУБД

Транзакция
Журнализация
Секционирование
Репликация

Дополнительные механизмы СУБД Транзакция Журнализация Секционирование Репликация

Слайд 43

Некоторые СУБД

Старые
Clipper
FoxPro
IBM DB2
dBase
Paradox
От Micro$oft
Visual FoxPro
Microsoft Access
MS SQL Server
Встраиваемые
BerkeleyDB
Firebird Embedded
OpenEdge
Microsoft SQL Server Compact
SQLite

Бесплатные
MySQL
PostgreSQL
Прочие
Caché
Firebird
Informix
Interbase
Oracle
Sybase

Некоторые СУБД Старые Clipper FoxPro IBM DB2 dBase Paradox От Micro$oft Visual
Adaptive Server Enterprise
ЛИНТЕР

Слайд 44

Типы данных БД (на примере PostgreSQL)

Численные типы
Целые
С фиксированной точкой
С плавающей точкой
Денежный тип

Типы данных БД (на примере PostgreSQL) Численные типы Целые С фиксированной точкой
(отличается специальным форматом вывода, а в остальном аналогичен числам с фиксированной точкой с двумя знаками после запятой)
Символьные типы произвольной длины
Двоичные типы (включая BLOB)
Типы «дата/время» (полностью поддерживающие различные форматы, точность, форматы вывода, включая последние изменения в часовых поясах)

Булев тип
Перечисление
Геометрические примитивы
Сетевые типы
IP и IPv6-адреса
CIDR-формат
MAC-адрес
UUID-идентификатор
XML-данные
Массивы
Идентификаторы объектов БД
Псевдотипы

Слайд 45

Ещё о данных

Тип Variant
Пустые и нулевые значения:
NULL
0
пустая строка “”
Операторы
=, ==, ===
Like
BETWEEN

Ещё о данных Тип Variant Пустые и нулевые значения: NULL 0 пустая

Слайд 46

Язык запросов

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

Язык запросов – искусственный язык, на котором делаются запросы к базам данных
другим информационным системам, особенно к информационно-поисковым системам.
Примеры:
SQL
Language Integrated Query — расширение для некоторых языков программирования в .NET Framework
XQuery
XPath
поисковые запросы

Слайд 47

Связанные понятия

Регулярные выражения
Релевантность

Связанные понятия Регулярные выражения Релевантность

Слайд 48

SQL

Structured Query Language
язык структурированных запросов

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

Слайд 49

3 варианта динамики данных
создание
удаление
модификация
а также отбор и выдача результатов
и обмен между

☝ Студенту

3 варианта динамики данных создание удаление модификация а также отбор и выдача
на заметку

Слайд 50

Возможности SQL

Изменение структуры данных
таблицы
поля
связи, индексы и пр.
Изменение данных
создание (добавление)
модификация
удаление
Поиск и выборка данных
расчёты
транспонирование
Управление

Возможности SQL Изменение структуры данных таблицы поля связи, индексы и пр. Изменение
пользователями и доступом к БД
Управление работой СУБД
транзакции

Слайд 51

Состав SQL

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

Состав SQL операторы инструкции вычисляемые функции таблицы поля связи и объединения

Слайд 52

Операторы SQL

операторы определения данных (Data Definition Language, DDL)
CREATE создает объект БД
ALTER

Операторы SQL операторы определения данных (Data Definition Language, DDL) CREATE создает объект
изменяет объект
DROP удаляет объект
операторы манипуляции данными (Data Manipulation Language, DML)
SELECT считывает данные, удовлетворяющие заданным условиям
INSERT добавляет новые данные
UPDATE изменяет существующие данные
DELETE удаляет данные
операторы определения доступа к данным (Data Control Language, DCL)
GRANT предоставляет пользователю (группе) разрешения на определенные операции с объектом
REVOKE отзывает ранее выданные разрешения
DENY задает запрет, имеющий приоритет над разрешением
операторы управления транзакциями (Transaction Control Language, TCL)
COMMIT применяет транзакцию.
ROLLBACK откатывает все изменения, сделанные в контексте текущей транзакции.
SAVEPOINT делит транзакцию на более мелкие участки.

Слайд 53

Структура запроса SQL на выборку данных

SELECT [ALL | DISTINCT] возвращаемый_столбец, … |

Структура запроса SQL на выборку данных SELECT [ALL | DISTINCT] возвращаемый_столбец, …
*
FROM спецификатор_таблицы, …
WHERE условие_поиска
GROUP BY имя_столбца, …
HAVING условие_поиска
ORDER BY спецификатор_сортировки, …

Слайд 54

Объединения таблиц

JOIN
INNER
OUTER (Left, RIght)
FULL
UNION

Объединения таблиц JOIN INNER OUTER (Left, RIght) FULL UNION

Слайд 55

Примеры запросов SQL

SELECT StName FROM Students WHERE GrNo IN (1, 3, 5,

Примеры запросов SQL SELECT StName FROM Students WHERE GrNo IN (1, 3,
10);
SELECT * FROM Students WHERE StName LIKE 'Натал_я';
и др.

Слайд 56

Преимущества и недостатки SQL

Преимущества
Независимость от конкретной СУБД
Наличие стандартов
Декларативность
Недостатки
Несоответствие реляционной модели данных
Повторяющиеся строки
Неопределённые

Преимущества и недостатки SQL Преимущества Независимость от конкретной СУБД Наличие стандартов Декларативность
значения (nulls)
Явное указание порядка колонок слева направо
Колонки без имени и дублирующиеся имена колонок
Отсутствие поддержки свойства «=»
Использование указателей
Высокая избыточность
Сложность
Отступления от стандартов
Сложность работы с иерархическими структурами

Слайд 57

Связанные понятия

SQL-SQL-иньекции

Связанные понятия SQL-SQL-иньекции

Слайд 58

Взаимодействие БД и ОС

ODBC
Open Database Connectivity
DAO
Data Access Objects
ADO
ActiveX Data Objects
ADOdb
BDE
Borland Database Engine

Взаимодействие БД и ОС ODBC Open Database Connectivity DAO Data Access Objects

Слайд 59

API
интерфейс программирования приложений
или интерфейс прикладного программирования
application programming interface
набор готовых классов, процедур, функций,

API интерфейс программирования приложений или интерфейс прикладного программирования application programming interface набор
структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах

☝ Студенту на заметку

Имя файла: Современные-информационные-технологии-.pptx
Количество просмотров: 441
Количество скачиваний: 0