Файл: Вопросы к экзамену по бд дать определение базы данных. Дать определение субд. Привести примеры субд (не менее 3х).docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 16.03.2024

Просмотров: 14

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Ответы на вопросы к экзамену по БД

  1. Дать определение базы данных. Дать определение СУБД. Привести примеры СУБД (не менее 3-х).

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

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

Примеры СУБД:

  • Настольные: Paradox, FoxPro, dBase, Clipper, Access и т.д.

  • Многопользовательские СУБД (серверы баз данных): Oracle, MS SQL Server, Informix, Sybase, Interbase, MySQL и т.д.



  1. Перечислить и кратко охарактеризовать основные функции СУБД. Для чего необходимо управлять буферами оперативной памяти, что это дает? Что дает управление данными во внешней памяти.

Основные функции СУБД:

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

  • Управление буферами оперативной памяти. СУБД обеспечивает буферизацию данных в оперативной памяти для увеличения скорости обмена с внешними устройствами;

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

  • Журнализация и восстановление базы данных после сбоев. В случае мягкого сбоя – повторить операцию, восстановление выполняется по журналу транзакций. В случае жесткого сбоя нужно иметь копию базы данных и журнал транзакций. 1 вариант: Используется зеркальная копия базы данных – тень. 2 вариант: используется копия базы данных на некоторый момент времени и журнал транзакций. Восстановление БД до точки  сбоя;

  • Поддержка языков баз данных. Для реляционных СУБД основным языком является язык SQL. Были и другие языки: dBase.




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

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


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

1 вариант: Используется зеркальная копия базы данных – тень.

2 вариант: используется копия базы данных на некоторый момент времени и журнал транзакций. Восстановление БД до точки сбоя.

  1. Перечислить основные элементы типовой организации СУБД. Сформулировать функции, которые выполняются ядром СУБД. Какие функции выполняются утилитами.

Типовая организация СУБД:

  • Ядро СУБД – обеспечивает выполнение основных функций СУБД



  • ППВИ – подсистема поддержки времени исполнения

  • Утилиты - вспомогательные программы: Копирование, восстановление базы данных, проверка целостности, сбор статистики и др.

  1. Что задает модель данных (три основных аспекта)? Перечислить основные модели данных. Проанализировать достоинства и недостатки каждой модели данных.

Модель данных задает:

  • основную структурную единицу, т.е. определяет логическую структуру данных (так называемая структурная часть модели);

  • набор операций для манипулирования этими структурами (манипуляционная часть);

  • ограничения целостности (целостная часть).

Четыре основные модели данных:

  • Иерархическая;

  • Сетевая;

  • Реляционная;

  • Объектная.

  1. Сформулировать достоинства и недостатки реляционной модели данных. Дать определение отношения. Перечислить и кратко охарактеризовать фундаментальные свойства отношений.

Достоинства:

  • Наличие небольшого набора абстракций, с помощью которого моделируется большинство предметных областей;

  • Наличие простого и мощного математического аппарата, базирующегося на теории множеств и математической логике;

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

Недостатки:

  • Ограниченность при использовании в областях, где требуются предельно сложные структуры данных;

  • Невозможность адекватного отражения семантики предметной области.




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


Фундаментальные свойства отношений:

1) Отсутствие кортежей-дубликатов. Из этого свойства вытекает наличие у каждого отношения так называемого первичного ключа — набора атрибутов, значения которых однозначно определяют кортеж отношения.

2) Отсутствие упорядоченности кортежей.

3) Отсутствие упорядоченности атрибутов.

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

Первичный ключ – минимальный набор атрибутов, однозначно определяющий кортеж отношения

Кортеж - запись в таблице, или множество пар вида: {имя атрибута, значение}

Атрибут - свойство сущности.

Схема отношения - множество пар вида {имя атрибута, тип} или {имя атрибута, домен}

Внешний ключ - атрибут или набор атрибутов, ссылающийся на существующее значение первичного ключа другой или этой же таблицы

  1. Может ли отношение иметь два первичных ключа? Может ли первичный ключ иметь неопределенное значение? Может ли внешний ключ иметь неопределенное значение?

  1. Нет. У вас не может быть двух первичных ключей в одной таблице, но вы можете иметь составной первичный ключ. Поскольку первичный ключ является идентификатором строки и не может быть два идентификатора для строки.

  2. Нет, не может.

  3. Если внешний ключ не связан с первичной сущностью, то он может содержать только неопределенные значения. Если при этом ключ является составным, то все атрибуты внешнего ключа должны быть неопределенными.

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




  • Структурная часть - описывает, какие объекты рассматриваются реляционной моделью.

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

  • Целостная часть - описывает ограничения, которые должны выполняться для любых отношений в любых реляционных баз данных - целостность сущностей и целостность внешних ключей

  • Целостность данных – правило, обеспечивающее поддержание установленных межтабличных связей и ограничений на данные при манипулировании данными.

  • Целостность сущности – связана с понятием первичного ключа.

  • Ссылочная целостность – связана с понятием внешнего ключа.


  1. Сформулировать соотношение операций реляционной алгебры и выражений реляционного исчисления. Перечислить теоретико-множественные операции реляционной алгебры. Дать точное и полное определение каждой теоретико-множественной операции реляционной алгебры.

  • Объединение двух отношений — это отношение, содержащее множество кортежей, принадлежащих либо первому, либо второму исходным отношениям, либо обоим отношениям одновременно. 
    Пересечение отношений в реляционной алгебре — это отношение, которое содержит множество кортежей, принадлежащих одновременно и первому и второму отношениям. 
    Разность отношений в реляционной алгебре — это отношение R1 и R2, содержащее множество кортежей, принадлежащих R1 и не принадлежащих R2 

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

  2. Процесс нормализации – это последовательный процесс приведения базы данных к эталонному виду, т. е. переход от одной нормальной формы к следующей. 
    Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных 
    Основные свойства нормальных форм состоят в следующем: 
    1) каждая следующая нормальная форма в некотором смысле лучше предыдущей нормальной формы; 
    2) при переходе к следующей нормальной форме свойства предыдущих нормальных форм сохраняются.

  3. Избыточность данных - это ситуация, возникающая в системах баз данных и связанная с непреднамеренным созданием дублированных данных, которые не нужны для работы базы данных.
    Задана следующая база данных, которая основана на одной таблице. В таблице определяется информация о преподавателях (Преподаватель, Дисциплина, Кафедра), студентах (Студент, Номер зачетки, Адрес), успеваемость студентов (Оценка).
    Пусть в эту базу данных нужно добавить нового преподавателя математики (столбцы Преподаватель, Дисциплина), который недавно принят на работу. Для этого необходимо, чтобы новый преподаватель обязательно оценил хотя бы одного студента. Иначе, в таком представлении базы данных, добавить данные будет невозможно. Значит, при добавлении преподавателя, нужно выгадывать несуществующие данные оценивания студента. Это и есть аномалия вставки.
    Задана таблица базы данных учета успеваемости в учебном заведении. Пусть преподаватель физики Петренко М.М. вышла замуж и изменила фамилию на Маркевич. Теперь во всех ячейках столбца (атрибута) Преподаватель нужно изменить имя преподавателя Петренко М.М. на Маркевич М.М. Редактирование одних и тех же данных в одной ячейке требует изменения этих данных в других ячейках
    Пусть в таблице базы данных по ошибке было введено оценивание по дисциплине Информатика, которую перенесли на следующие семестры обучения. Автоматически, при удалении строки с дисциплиной «Информатика», будет потеряна строка с данными о преподавателе (Левитан М.К), который преподает эту дисциплину и название кафедры (Математические дисциплины). При удалении информации об оценивании студента теряется информация о преподавателе кафедры.

  4. 1НФ
    1) все значения таблицы являются атомарными (неделимыми). Это означает, что ячейки таблицы должны содержать одиночные значения и все записи в отдельном столбце таблицы (атрибуте) должны иметь один и тот же тип.
    2) в качестве значений атрибута таблицы не допускаются группы или массивы повторяющихся данных.
    2НФ
    Переменная отношения находится во второй нормальной форме тогда и только тогда, когда она находится в первой нормальной форме и каждый не ключевой атрибут неприводимо (функционально полно) зависит от её потенциального ключа. Функционально полная зависимость означает, что если потенциальный ключ является составным, то атрибут зависит от всего ключа и не зависит от его частей.
    3НФ
    Переменная отношения находится в третьей нормальной форме тогда и только тогда, когда она находится во второй нормальной форме, и отсутствуют транзитивные функциональные зависимости не ключевых атрибутов от ключевых.
    Функциональная зависимость R.X (r) R.Y называется полной, если атрибут Y не зависит функционально от любого точного подмножества X.
    Переменная отношения находится во второй нормальной форме тогда и только тогда, когда она находится в первой нормальной форме и каждый не ключевой атрибут неприводимо зависит от (каждого) её потенциального ключа.

  5. Функциональная зависимость R.X -> R.Y называется транзитивной, если существует такой атрибут Z, что имеются функциональные зависимости R.X -> R.Z и R.Z -> R.Y и отсутствует функциональная зависимость R.Z —> R.X. (При отсутствии последнего требования мы имели бы "неинтересные" транзитивные зависимости в любом отношении, обладающем несколькими ключами.)
    Переменная отношения R находится в 3NF тогда и только тогда, когда выполняются следующие условия:
    R находится во второй нормальной форме. Ни один не ключевой атрибут R не находится в транзитивной функциональной зависимости от потенциального ключа R.

  6. 1НФ
    1) все значения таблицы являются атомарными (неделимыми). Это означает, что ячейки таблицы должны содержать одиночные значения и все записи в отдельном столбце таблицы (атрибуте) должны иметь один и тот же тип.
    2) в качестве значений атрибута таблицы не допускаются группы или массивы повторяющихся данных.
    2НФ
    Переменная отношения находится во второй нормальной форме тогда и только тогда, когда она находится в первой нормальной форме и каждый не ключевой атрибут неприводимо (функционально полно) зависит от её потенциального ключа. Функционально полная зависимость означает, что если потенциальный ключ является составным, то атрибут зависит от всего ключа и не зависит от его частей.
    3НФ
    Переменная отношения находится в третьей нормальной форме тогда и только тогда, когда она находится во второй нормальной форме, и отсутствуют транзитивные функциональные зависимости не ключевых атрибутов от ключевых.

  7. Сущность – это некоторый объект реального мира, который может существовать независимо.
    Атрибут – это свойство сущности. Атрибут, который уникальным образом идентифицирует экземпляры сущности, называется ключом.
    Этапы:
    — Идентификация сущностей, их атрибутов, а также первичных и альтернативных ключей.
    — Идентификация отношений между сущностями и указание типов отношений.
    — Разрешение неспецифических отношений (отношений многие-ко-многим)
    Этапы реляционной модели:
    - Идентификация представляющих интерес сущностей и связей.
    - Идентификация семантической информации в наборах связей (например, является ли некоторый набор связей отображением 1:n).
    - Определение кардинальности связей.
    - Определение атрибутов и наборов их значений (доменов).
    - Организация данных в виде отношений "сущность-связь".


  1. Дать определение клиента и сервера локальной (глобальной) сети. Привести примеры серверов. Привести примеры серверов баз данных (СУБД).

Сервер локальной сети предоставляет ресурсы (услуги) рабочим станциям и/или другим серверам. Принято называть клиентом локальной сети, запрашивающий услуги у некоторого сервера и сервером - компонент локальной сети, оказывающий услуги некоторым клиентам. Примеры серверов БД: SQL Server (Microsoft), SQL BASE SERVER, Oracle SERVER (Oracle Corporation), IBM DB2, Informix.Каждый сервер БД может работать на определенных типах компьютеров и сетей. Операционными системами серверов могут быть MSDOS, OS/2, Xenix, Unix, Dec VMS/ Рабочие станции пользователей обычно работают под управлением MSDOS, OS/2, Xenix, Unix. (изменено)

  1. Перечислить команды языка SQL для создания, модификации (изменения структуры) и удаления таблиц. Перечислить команды языка SQL для манипулирования данными. Кратко охарактеризовать каждую команду.

Команды языка SQL:

  1. CREATE TABLE – создание таблицы;

  2. ALTER TABLE – изменение структуры таблицы;

  3. DROP TABLE – удаление таблицы;

Манипулирование данными DML – Data Manipulation Language:

  1. INSERT - добавляет новые данные;

  2. UPDATE - изменяет существующие данные;

  3. DELETE - удаляет данные;







































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

Жизненный цикл программного продукта: 

  1. представляет собой непрерывный процесс, начинающийся с момента принятия решения о создании программного обеспечения и заканчивающийся в момент полного изъятия его из эксплуатации.

Этапы ЖЦПП:

  1. разработку требований или технического задания; 
    2) разработку системы или технического проекта; 
    3) программирование или рабочее проектирование; 
    4) пробную эксплуатацию; 
    5) сопровождение и улучшение; 
    6) снятие с эксплуатации;

Применимость Каскадной модели и спиральной:

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

  2. Спиральная модель хорошо себя зарекомендовала при разработке инновационных систем или новой серии продукта.