- •2.) Требования, предъявляемые к бд.
- •3.) Модели данных. Инфологическая модель.
- •4.) Иерархическая модель.
- •7.) Реляционная модель. Достоинства и недостатки
- •11. Основы, принципы и аспекты проектирования.
- •12. Проектирование модели бд в терминах «сущность-связь»
- •13. Проектирование модели бд в терминах «сущность-связь»
- •Понятие нормализации данных. Функциональная зависимость
- •Первая, вторая и третья нормальные формы.
- •Нф Бойса-Кодда, четвертая и пятая нормальные формы.
- •Понятие субд. Классификация субд.
- •Типовая организация современной субд.
- •Основные функции субд.
- •Языки запросов, их основные возможности.
- •Основные объекты субд «Oracle».
- •5.3.1. Символьные типы
- •Перечень символьных типов
- •Создание запросов. Основные типы условий поиска.
- •2.4.4.1. Создание запроса на выборку с помощью Мастера
- •27. Агрегирование и группировка данных
- •28.Манипулирование данными отношений
- •Базовые средства манипулирования данными
- •29. Понятие подзапроса.
- •Использование встроенных процедур и функций. Функции работы с символами, строками и датами.
- •Initcap(строка)
- •31. Использование встроенных процедур и функций. Функции работы с числами. Функции преобразования типов данных.
- •32. Создание пользовательских процедур.
- •33. Создание пользовательских функций.
- •35. Работа с курсорами
- •36. Соединение таблиц и запросов при организации запросов
- •37. Целостность баз данных.
- •38. Работа с триггерами.
- •39. Понятие транзакции. Свойства транзакций.
- •40. Взаимовлияние транзакций
- •41. Блокировки и тупиковые ситуации
- •42. Индексирование. Виды индексов
- •43. Работа с индексами
- •44. Оптимизация запросов в реляционных субд
- •45. Методы оптимизации запросов
- •46. Методы доступа к базе данных. Технологии odbc, bde.
- •47. Методы доступа к базе данных. Технологии ado, ole db
- •48. Модели организации данных.
Понятие субд. Классификация субд.
В современной технологии баз данных предполагается, что создание базы данных, её поддержка и обеспечение доступа пользователей к ней осуществляются централизованно с помощью специального программного инструментария – системы управления базами данных (СУБД).
Система управления базами данных (СУБД) – это совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями.
Современная СУБД содержит в своем составе программные средства создания баз данных, средства работы с данными и сервисные средства. С помощью средств создания БД проектировщик, используя язык описания данных (ЯОД), переводит логическую модель БД в физическую структуру, а на языке манипуляции данными (ЯМД) разрабатывает программы, реализующие основные операции с данными (в реляционных БД – это реляционные операции). При проектировании привлекаются визуальные средства, т.е. объекты, и программа-отладчик, с помощью которой соединяются и тестируются отдельные блоки разработанной программы управления конкретной БД.
Классифицировать СУБД можно, используя различные признаки классификации.
По степени универсальности различают СУБД общего и специального назначения.
Важнейшим классификационным признаком СУБД является тип модели данных, поддерживаемый СУБД. По этому признаку СУБД делятся на:
иерархические. Первой иерархической СУБД была система IMS (Information Management System) компании IBM, коммерческое распространение которой началось в 1968 г.;
сетевые. Первой сетевой СУБД считается система IDS (Integrated Data Store), разработанная компанией General Electric немного позже системы IMS;
реляционные. Первые коммерческие реляционные СУБД от компаний IBM, Oracle Corporation, Relation Technology Inc. и других поставщиков появились в начале 80-х годов;
объектно-реляционные (постреляционные). Объектно-реляционные СУБД продолжают использовать стандартный язык запросов для реляционных БД – SQL, но с объектными расширениями;
объектно-ориентированные. В основе объектно-ориентированных СУБД лежит объектно-ориентированная модель обработки данных.
многомерные, в основе которых лежит многомерная модель данных.
На самом общем уровне все СУБД можно разделить на:
профессиональные (промышленные), которые представляют собой программную основу для разработки автоматизированных систем управления крупными экономическими объектами(Oracle, DB2, Sybase, Informix, Inqres, Progress);
персональные (настольные). Это программное обеспечение, ориентированное на решение задач локального пользователя или компактной группы пользователей и предназначенная для использования на персональном компьютере, это объясняет их второе название – настольные.(DBASE, FoxBase, FoxPro, Clipper, Paradox, Access).
Типовая организация современной субд.
СУБД состоит из нескольких программных компонентов, каждый из которых нацелен на выполнение специфической операции.
Логически в современной реляционной СУБД можно выделить внутреннюю часть — ядро СУБД, компилятор языка БД (обычно SQL), подсистему поддержки времени выполнения, набор утилит.
Ядро СУБД отвечает за управление данными во внешней памяти, управление буферами оперативной памяти, управление транзакциями и журнализацию.
Ядро СУБД обладает собственным интерфейсом, не доступным пользователям напрямую и используемым в программах, производимых компилятором SQL и утилитах БД.
Ядро СУБД является основной резидентной частью СУБД. При использовании архитектуры «клиент-сервер» ядро является основной составляющей серверной части системы.
Обобщенная компонентная структура СУБД:
Процессор запросов преобразует запросы в последовательность низкоуровневых инструкций для контроллера базы данных.
Компилятор языка определения данных преобразует его команды в набор таблиц, содержащих метаданные.
Препроцессор языка манипулирования данными преобразует внедренные в прикладные программы его операторы в вызовы стандартных функций базового языка. Основной его функцией является компиляция операторов языка БД в некоторую выполняемую программу.
Контроллер словаря управляет доступом к системному каталогу и обеспечивает работу с ним.
Контроллер файлов манипулирует предназначенными для хранения данных файлами и отвечает за распределение доступного дискового пространства. Он создает и поддерживает список структур и индексов, определенных во внутренней схеме.
Контроллер базы данных взаимодействует с запущенными пользователями прикладными программами и запросами. Контроллер базы данных принимает запросы и проверяет внешние и концептуальные схемы для определения тех концептуальных записей, которые необходимы для удовлетворения требований запроса. Затем контроллер базы данных вызывает контроллер файлов для выполнения поступившего запроса. В состав контроллера базы данных входят следующие основные программные компоненты:
контроль прав доступа проверяет наличие у данного пользователя полномочий для выполнения затребованной операции;
процессор команд получает управление после проверки полномочий пользователя для выполнения затребованной операции;
средства контроля целостности осуществляют в случае выполнения операций, которые изменяют содержимое базы данных, проверку того, удовлетворяет ли затребованная операция всем установленным ограничениям поддержки целостности данных;
оптимизатор запросов определяет оптимальную стратегию выполнения запроса;
контроллер транзакций осуществляет требуемую обработку операций, поступающих в процессе выполнения транзакций;
планировщик отвечает за бесконфликтное выполнение параллельных операций с базой данных и управляет относительным порядком выполнения операций, затребованных в отдельных транзакциях;
контроллер восстановления гарантирует восстановление базы данных до непротиворечивого состояния при возникновении сбоев;
контроллер буфера отвечает за перенос данных между оперативной памятью и жестким диском.
