кодесурса

Система управления базами данных

script1adsense2code
script1adsense3code

В этой презентации описываются концепции, подходы, инструменты и методология системы управления базами данных.

расшифровка

Вступление

► Что такое данные?
★ данные хранятся факты.
★ Это могут быть цифры, слова, измерения, наблюдения или даже просто описания вещей.
★ Пример: результат теста каждого студента представляет собой один кусок данных.

► Что такое информация?
★ Информация - это то, что сообщает, то есть то, из чего могут быть получены данные.
★ Информация передается либо как содержание сообщения, либо путем прямого или косвенного наблюдения за чем-либо.
★ Пример: средний балл по конкретному предмету - это информация, которую можно сделать из данных.

Что такое база данных?
★ магазины организованной информации
★ данные извлекаются из информации
★ Знания получены из данных

Какие данные?

► Данные предприятия ► Последние данные
★ банковское дело ★ научные данные
★ Транспорт (железные дороги, авиалинии) ★ биологические данные
★ Университет, Библиотеки ★ полу структурированные данные (XML)
★ Интернет-магазины, супермаркет ★ Сетевые данные
★ финансы
★ Производство (производство,
инвентарь, заказы, цепочки поставок)
★ Телекоммуникации
★ Продажи (клиенты, продукты,
покупка)

Что такое система управления базами данных
(СУБД)?

★ Сбор взаимосвязанных данных
★ Обеспечивает удобную и эффективную среду
★ Набор программ для хранения, обновления данных
★ отвечать на запросы о данных
★ Управляет очень большими объемами данных
★ Поддержка одновременного доступа к большим объемам данных
★ Поддерживает безопасный атомарный доступ к большим объемам данных.

Упрощенная среда системы баз данных

История СУБД

★ 1960 - Первая СУБД, разработанная Чарльзом Бахманом в GE.
★ 1970 - Кодд представил реляционную СУБД.
★ 1980 - реляционная модель стала популярной и принята в качестве основной парадигмы базы данных. SQL, ANSI SQL и т. Д.
★ 1980 - объектно-ориентированный
★ 2000 - NoSQL и NewSQL

Зачем использовать СУБД?

★ Независимость данных и эффективный доступ
★ Контроль избыточности
★ Обеспечение целостности
★ Предоставление нескольких пользовательских интерфейсов
★ Ограничение несанкционированного доступа
★ единое управление данными
★ Повышение производительности разработки приложений
★ Обеспечение резервного копирования и восстановления

Пример СУБД

★ Microsoft SQL Server, доступ
★ Oracle
★ IBM - DB2, Informix
★ Sybase
★ MySQL
★ PostgreSQL
★ SQLite
★ Жар-птица

Абстракция данных

► Основная цель системы баз данных - предоставить пользователям абстрактное представление о системе.
► Система скрывает некоторые детали того, как данные хранятся, создаются и поддерживаются.
► Это дает архитектуру для разделения пользовательских приложений и физической базы данных.

Уровни абстракции данных

Физический уровень: самый низкий уровень абстракции описывает, как на самом деле хранятся данные, например, индекс, B-дерево, хеширование.
Логический уровень: логический уровень описывает свойства данных, такие как семантика данных, отношения между данными.
Уровень просмотра: самый высокий уровень абстракции описывает только часть всей базы данных, например, банкомат в банке получает представление о балансе клиента, но не данные транзакции.

Просмотр данных

► Архитектура системы баз данных

 Уровень просмотра
 | ------------------------------------------------- | 
 | просмотр - 1 просмотр - 2 -------------- просмотр - n |
 | |                     
 | ------------------------------------------------- |
                           |
                        логический
                         уровень
                           |
                        физический
                         уровень

Инстансы

★ захватить текущее состояние данных
★ зависит от времени
★ только один выход в любой момент времени

Три схемы подхода

► Общий дизайн базы данных называется схемой базы данных.

Трехсхемный подход, или концепция трех схем, - это подход к созданию информационных систем и систем управления информацией с 1970-х годов. Предлагается использовать следующие типы схем.

★ Внешняя схема
★ концептуальная схема
★ Внутренняя схема

Три схемы подхода
Внешняя схема

★ Пользовательский просмотр базы данных.
★ Описывает подмножество базы данных, в которой заинтересована конкретная группа пользователей, в соответствии с форматом, который хочет пользователь, и скрывает остальные.
★ Может содержать виртуальные данные, которые получены из файлов, но не хранятся в явном виде.

Три схемы подхода
Концептуальная схема

★ Логическая структура всей базы данных, как видно из DBA.
★ скрывает детали физических структур хранения.
★ Концентрируется на описании сущностей, типов данных, отношений, операций и ограничений.

Три схемы подхода
Внутренняя схема

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

Независимость данных

► Основное преимущество архитектуры с тремя схемами состоит в том, что она обеспечивает независимость данных. Независимость данных - это возможность изменять схему на одном уровне системы базы данных без необходимости изменять схему на других уровнях.

Существует два типа независимости данных:
★ логическая независимость данных
★ физическая независимость данных

Независимость данных
Независимость логических данных

★ Он имеет возможность изменять концептуальную схему без необходимости изменения внешней схемы или прикладных программ.
★ Пример: студент (ID, имя, класс, секция)
На вид, включающий только ID и Имя, не влияют изменения любых других атрибутов.

Независимость данных
Физическая независимость данных

★ Имеет возможность изменять внутреннюю схему, не затрагивая концептуальную или внешнюю схему.
★ Внутренняя схема может измениться, чтобы улучшить производительность, то есть создать дополнительную структуру доступа.
★ Легче достичь логической независимости данных, потому что прикладные программы зависят от логических структур.

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

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

Почему модели данных важны?

★ Различные взгляды (дизайнеров, программистов и конечных пользователей) на одни и те же данные приводят к проектам, которые не отражают работу организации
★ Моделирование данных уменьшает сложность базы данных и помогает создать надежный дизайн базы данных
★ Это помогает создавать таблицы базы данных, которые не содержат повторяющихся значений данных, которые могут стать противоречивыми

Типы моделей данных

► Модели данных можно разделить на три основные группы. Они есть :
★ Объектно-логические модели
★ Основанные на записи логические модели
★ Физическая модель данных

Объектные логические модели

► Эти модели представляют собой набор концептуальных инструментов для описания данных, отношений данных, семантики данных и ограничений данных. Ниже приведены известные модели в этой группе:

★ модель сущности-отношения
★ Объектно-ориентированная модель
★ Семантическая модель
★ Функциональная модель

Модель сущности-отношения
(Объектные логические модели)

Модель сущности-отношения

★ Он основан на моделировании реального мира, который состоит из базовых объектов, называемых сущностями, и отношений между этими объектами.
★ Общая логическая структура данных базы данных может быть представлена графически с помощью диаграммы ER. Который состоит из прямоугольника (объекта), эллипса (атрибута), ромба (отношения) и линий.

Сущность, атрибуты, отношения

► Сущность: Сущность - это объект, место, человек, концепция, деятельность, о которой предприятие записывает данные.
► Атрибуты: Атрибуты - это элементы данных, которые описывают сущность.
Примеры :

сущность Атрибуты
Покупатель Имя, адрес, статус
Книга ISBN, название, автор, цена
► Отношения: Отношения - это связь между сущностями. СТУДЕНТ ЗАПИСЫВАЕТСЯ В КУРС

Графическое обозначение диаграммы E - R

ИМЯ СИМВОЛ ФУНКЦИЯ Взаимосвязь атрибутов сущностей -Данные в системе -Одно идентифицируется по идентификатору -Имеет атрибуты, которые его описывают Опишите сущность -Относится к двум сущностям -Уникально идентифицируется по идентификатору

Степень Отношения (Модель ER)

► Степень взаимосвязи - это число вхождений в одном объекте, которые связаны с количеством вхождений в другом. Это также называется кардинальностью.
Есть три степени родства, известные как:

★ один на один (1: 1)
★ Один ко многим (1: N)
★ Многие ко многим (М: М)

Объектно-ориентированная модель
(Объектные логические модели)

► В объектно-ориентированной модели данных как данные, так и их взаимосвязь содержатся в единой структуре, известной как объект.
★ Объект содержит значения, хранящиеся в переменных экземпляра внутри объекта.
★ В отличие от моделей, ориентированных на записи, эти значения сами являются объектами.
★ Объект также содержит тела кода, которые работают с объектом.
★ Эти части кода называются методами.
★ Объекты, которые содержат одинаковые типы значений и поведения (методы), сгруппированы в классы.
★ Внутренние части объекта, переменные экземпляра и код метода, не видны снаружи.
★ Результат - два уровня абстракции данных.

Объектно-ориентированные модели
Состояние, поведение, идентичность

► Состояние: типы атрибутов и значения
► Поведение: как объект действует и реагирует
- Поведение выражается через операции, которые могут быть выполнены на нем
► Идентичность: каждый объект имеет уникальную идентичность, даже если все значения его атрибутов одинаковы

Семантическая модель

★ Семантическая модель данных (SDM), как и другие модели данных, является способом структурирования данных для их логического представления.
★ Он направлен на предоставление большего значения самим данным, а не исключительно или в первую очередь на связи и атрибуты данных.
★ Обеспечивает понимание данных на высоком уровне, абстрагируя их от физических аспектов хранения данных.
★ В SDM сущность представляет некоторый аспект или элемент в реальном мире, например, сотрудника.
★ Сущность сродни записи в реляционной системе или объекту в объектно-ориентированной системе.
★ Эти объекты в SDM ориентированы на более общие типы, а не на наборы данных.
★ В SDM сущность - это очень базовое понятие реального или концептуального объекта, которое определяется одним атрибутом.

Функциональная модель

★ Функциональная модель данных обеспечивает единый подход к манипулированию данными и процедурами.
★ Функциональная модель данных - это определение всех компонентов информационной системы в виде функций.
★ Например, функциональная модель данных определяет объекты данных, атрибуты и отношения как так называемые функции базы данных.
★ Функциональный язык манипулирования данными - это ряд функций манипулирования данными, которые можно применять к функциям базы данных.

Основанные на записи логические модели

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

Основанные на записи логические модели

► Продолжение предыдущего слайда
★ Модели на основе записей не включают механизм прямого представления кода в базе данных.
★ Отдельные языки, связанные с моделью, используются для выражения запросов и обновлений базы данных.
★ Три наиболее распространенные модели - это сетевая, иерархическая и реляционная модели.

Модель сети

★ Сетевая база данных состоит из коллекции записей
★ Отношения между данными представлены ссылками.
★ Запись во многом похожа на сущность в модели ER
★ Каждая запись представляет собой набор полей (атрибутов), каждое из которых содержит только одно значение данных.
★ Связь - это связь между двумя записями.
★ Организация - это произвольный граф.

Модель сети

► Преимущества
● гибкий, быстрый, эффективный

► Недостатки
● сложный
● Реструктуризация может быть затруднена из-за изменения всех указателей

Модель сети
(Системы баз данных)

► Следующие системы баз данных используют модель сети
★ Интегрированное хранилище данных (IDS)
★ IDMS (Интегрированная система управления базами данных)
★ RDM Embedded
★ RDM сервер
★ TurboIMAGE
★ Univac DMS-1100

Иерархическая модель

★ иерархическая модель данных организует данные в виде древовидной структуры, а не произвольных графиков
★ Существует иерархия родительских и дочерних сегментов данных
★ Эта структура подразумевает, что запись может иметь повторяющуюся информацию, как правило, в дочерних сегментах данных.
★ Данные в серии записей, к которым прикреплен набор значений полей
★ Он собирает все экземпляры определенной записи вместе как тип записи
★ Эти типы записей являются эквивалентами таблиц в реляционной модели, а отдельные записи являются эквивалентами строк
★ Для создания связей между этими типами записей иерархическая модель использует отношения «Родитель-ребенок».

Иерархическая модель

► Преимущества
● Легко искать
● легко добавлять новые ветки

► Недостатки
● Необходимо установить типы поиска до разработки иерархической структуры

Иерархическая модель
(Системы баз данных)

► В настоящее время наиболее широко используются иерархические базы данных.
★ IMS, разработанный IBM
★ Реестр Windows от Microsoft

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

► Нормализация базы данных - это процесс для уточнения модели данных, построенной на основе диаграммы Entity-Relationship, и организации полей и таблиц реляционной базы данных для минимизации избыточности. Нормализация обычно включает в себя разделение больших таблиц на более мелкие (и менее избыточные) таблицы и определение отношений между ними. Цель состоит в том, чтобы изолировать данные, чтобы в одну таблицу можно было добавлять, удалять и модифицировать поле, а затем распространять через остальную часть базы данных, используя определенные отношения.

► Эдгар Ф. Кодд, изобретатель реляционной модели, представил концепцию нормализации и то, что мы теперь знаем как первую нормальную форму (1NF) в 1970 году.

Необходимость нормализации

★ Улучшить дизайн базы данных.
★ обеспечивает минимальную избыточность данных
★ Уменьшает необходимость реорганизации данных при изменении дизайна.
★ Уменьшить аномалии для деятельности базы данных.

Шаги в нормализации

► Есть три шага в нормализации.
★ Первая нормальная форма (1 НФ)
★ Вторая нормальная форма (2 НФ)
★ Третья нормальная форма (3 НФ)

Первая нормальная форма (1 НФ)

★ Определите повторяющиеся группы полей.
★ Удалить повторяющиеся группы полей.
★ Определите ключи для таблиц.
★ Ключ родительских таблиц приводится как часть связанного ключа второй таблицы.

Вторая нормальная форма (2 NF)

★ Проверьте, все ли поля зависят от всего ключа
★ Удалить поля, которые зависят от части ключа
★ Группировка частично зависимых полей в отдельную таблицу
★ Назовите таблицы
★ определить ключ (ы) к таблице

Третья нормальная форма (3 NF)

★ Удалить поля, которые
- зависит от других неключевых полей
- может быть рассчитано или выведено из логики
★ Сгруппируйте взаимозависимые поля в отдельные таблицы, определите ключ и назовите таблицу

Реляционная модель

★ Данные организованы в виде строк и столбцов в таблице, известной как отношение.
★ Положение строки в таблице не имеет значения.
★ Пересечение строки и столбца должно давать одно значение.
★ Все значения, отображаемые в столбцах, должны содержать одно значение.
★ Строка должна быть уникальной.
★ имена столбцов должны быть уникальными.
★ Все значения столбцов являются атомарными.

Модель реляционной базы данных

❖ Поля (столбцы) в таблице хранят атрибуты.
➢ У каждого атрибута есть определенный домен.
Up Кортежи (или записи или строки) в таблице хранят информацию.
➢ Каждый кортеж является уникальным экземпляром объекта.
❖ Таблицы состоят из набора кортежей.
➢ Таблица также называется отношением.

Реляционная база данных Term

❖ Стол
➢ Сбор соответствующих данных, относящихся к одному типу объектов реального мира.
❖ колонка
➢ Специальное место для одного типа данных, относящихся к одному типу объектов реального мира.
❖ домен
➢ Набор всех возможных значений для определенного столбца.
Ow ряд
➢ Сбор данных, описывающих один объект реального мира.
Key первичный ключ
➢ Столбцы, которые являются частью строки и однозначно идентифицируют любую строку.

Модель реляционной базы данных (записи)

● Каждая запись представляет логический объект (например, счет-фактуру).
● Каждое поле представляет атрибут логического объекта.

Модель реляционной базы данных (ключ)

● У каждой таблицы есть первичный ключ (одно поле или комбинация полей), который имеет уникальное значение для каждой записи в таблице.

Модель реляционной базы данных (связанные таблицы)

● Таблицы могут быть связаны (объединены) вместе на основе их ключей.
● Идея состоит в том, чтобы разложить на отдельные таблицы без избыточности и обеспечить возможность повторной сборки без потери информации.

Свойства реляционной базы данных

★ Представлять данные в виде таблиц.
★ Нет жесткой связи между таблицами.
★ Не требует от пользователя понимания физической реализации.
★ Предоставляет информацию о его содержании и структуре в системной таблице.
★ Поддерживает концепцию значений NULL

12 правил Кодда для РСУБД

Доктор Эдгар Франк Кодд (19 августа 1923 г. - 18 апреля 2003 г.) был специалистом по компьютерам, работая в IBM, он изобрел реляционную модель для управления базами данных (теоретическая основа для реляционных баз данных). Кодд предложил тринадцать правил (от нуля до двенадцати) и сказал, что если система управления базами данных соответствует этим правилам, ее можно назвать системой управления реляционными базами данных. Эти правила называются 12 правилами Кодда. Вряд ли какой-либо коммерческий продукт следует за всем.

★ Нулевое правило: система должна квалифицироваться как реляционная, как база данных и как система управления. Чтобы система квалифицировалась как система управления реляционными базами данных (RDBMS), эта система должна использовать свои реляционные средства (исключительно) для управления базой данных. Другие 12 правил вытекают из этого правила. Правила следующие:

12 правил Кодда для РСУБД

★ Правило 1: информационное правило
★ Правило 2: Правило гарантированного доступа
★ Правило 3: систематическая обработка нулевых значений
★ Правило 4: Активный онлайн-каталог на основе реляционной модели
★ Правило 5: Правило всеобъемлющего подъязыка данных
★ Правило 6: правило обновления представления
★ Правило 7: вставка, обновление и удаление на высоком уровне
★ Правило 8: физическая независимость данных
★ Правило 9: логическая независимость данных
★ Правило 10: Честность независимости
★ Правило 11: независимость распределения
★ Правило 12: правило не подрывной деятельности

Язык СУБД

► Язык определения данных (DDL)
► Язык определения хранилища (SDL)
► Просмотр определения языка (VDL)
► Язык манипулирования данными (DML)

Язык определения данных (DDL)

★ DDL - это язык, используемый для определения структур данных в базе данных.
★ Основная идея: скрыть детали реализации схем базы данных от пользователей.
★ DDL-операторы компилируются, в результате чего набор таблиц сохраняется в специальном файле, который называется словарь данных или каталог данных.
★ Каталог данных содержит метаданные (данные о данных)
★ Обычно считается подмножеством SQL, но может также относиться к языкам, которые определяют другие типы данных.
★ Концепция и имя DDL были впервые введены в отношении модели базы данных Codasyl, где схема базы данных была написана в синтаксисе языка, описывающем записи, поля и наборы модели пользовательских данных.

Язык определения данных (DDL)

► SQL DDL позволяет задавать набор отношений и о каждом отношении:
★ Схема каждого отношения
★ Область значений, связанных с каждым атрибутом
★ ограничения целостности
★ Набор показателей для каждого отношения
★ Физическое хранение каждого отношения на диске

► Типы данных (типы доменов) в стандарте SQL-92
★ char (n) - строка символов фиксированной длины. символ эквивалентен
★ varchar (n) - символ переменной длины указанного пользователем максимума n.
★ int - это целое число (зависит от машины). целое число эквивалентно.
★ числовой (p, d) - это число с фиксированной запятой с заданной пользователем точностью чисел в цифрах и числах после десятичной точки.
★ реальная, двойная точность - числа с плавающей точкой и двойной точности, с машинно-зависимой точностью.
★ float (n) - это число с плавающей запятой с заданной пользователем точностью не менее n.
★ дата - это календарная дата, содержащая (четырехзначный) год, месяц и день месяца.
★ время - это время суток в часах, минутах и секундах.

► Вот несколько примеров операторов языка определения данных (DDL), которые используются для определения структуры или схемы базы данных.
★ CREATE - для создания объектов в базе данных
★ ALTER - изменяет структуру базы данных
★ DROP - удалить объекты из базы данных

Язык определения хранилища (SDL)

► Определяет внутреннюю схему
★ физическая структура
★ байт на поле
★ порядок полей
★ сортировка
★ Доступ (хеш, B-дерево)
★ Структура файла
★ смешанные записи и т. Д.
► Некоторые СУБД не имеют различий между этими схемами, поэтому DDL и SDL совпадают.

Язык определения представления (VDL)

► Определяет внешние схемы (в СУБД, где существует этот уровень)
★ Определить подмножества записей, доступных для классов пользователя.
★ Создание «виртуальных таблиц» из базовой таблицы.
★ Представление представляется пользователю как концептуальный уровень.

Язык манипулирования данными (DML)

★ Манипулирование данными - это поиск, вставка, удаление, изменение информации в базе данных.
★ DML - это язык, который позволяет пользователям получать доступ к данным и манипулировать ими.
★ Популярным языком манипулирования данными является язык структурированных запросов (SQL), который используется для извлечения и манипулирования данными в реляционной базе данных.
★ Концепция и имя DDL были впервые введены в отношении модели базы данных Codasyl, где схема базы данных была написана в синтаксисе языка, описывающем записи, поля и наборы модели пользовательских данных.

► Вот несколько примеров операторов языка манипулирования данными (DML), которые используются для управления данными в объектах схемы.
★ INSERT - вставить данные в таблицу
★ ОБНОВЛЕНИЕ - обновляет существующие данные в таблице
★ DELETE - удаляет все записи из таблицы, место для записей остается

Менеджер баз данных

► Менеджер базы данных - это программный модуль, который обеспечивает интерфейс между низкоуровневыми данными, хранящимися в базе данных, и прикладными программами и запросами, отправляемыми в систему.

Ответственность менеджера баз данных

★ Взаимодействие с файловым менеджером: Хранение необработанных данных на диске с использованием файловой системы. Менеджер баз данных должен преобразовывать операторы DML в низкоуровневые команды файловой системы для хранения, извлечения и обновления данных в базе данных.
★ Обеспечение целостности: проверка того, что обновления в базе данных не нарушают ограничения согласованности (например, при отсутствии остатка на банковском счете ниже 50 долларов США)
★ Обеспечение безопасности: обеспечение доступа пользователей только к той информации, которую им разрешено видеть.
★ Контроль параллелизма: сохранение согласованности данных при одновременном использовании пользователей.

Администратор базы данных

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

Роль администратора базы данных

★ Подбор аппаратного и программного обеспечения
- идти в ногу с современными технологическими тенденциями
- Предсказать будущие изменения

★ Управление целостностью данных
- Контроль целостности защищает данные от несанкционированного использования
- Согласованность данных
- Поддержание связи данных
- Домены - устанавливает допустимые значения

★ Управление безопасностью и конфиденциальностью данных
- установление пользовательских привилегий
- Защита данных от случайной потери, уничтожения или неправильного использования.
- Брандмауэры

Роль администратора базы данных

► Продолжение предыдущего слайда
★ Резервное копирование данных
- автоматический сброс
- Периодическое резервное копирование
- Резервные копии хранятся в безопасном, удаленном месте

★ Восстановление базы данных
- Стратегии переустановки базы данных после сбоя
- Средства восстановления включают резервное копирование, менеджер восстановления и т. Д.

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code