Uploaded by SELITA SELITA

лекция 1 (3)

advertisement
Лекция 1
Принципы построения баз данных. Обязанности администратора баз
данных. Основные объекты баз данных. Режимы запуска и останова
базы данных. Пользователи и схемы базы данных. Привилегии,
назначение привилегий. Управление пользователями баз данных.
Табличные пространства и файлы данных. Модели и типы данных.
Схемы и объекты схемы данных. Блоки данных, экстенты сегменты.
Структуры памяти.
В основе построения БД лежат определенные научные принципы,
позволяющие
создавать
высококачественные
системы,
отвечающие
современным требованиям.
Из множества используемых принципов создания БД (рис.10.1) выделим
наиболее существенные:
· интеграции данных;
· централизации управления данными.
Оба принципа отражают суть БД. Интеграция является основой
организации БД, централизация управления – основой организации и
функционирования СУБД. Остальные принципы в той или иной степени
связаны с первыми.
Суть принципа интеграции данных состоит в объединении отдельных,
взаимно не связанных данных в единое целое, в роли которого выступает база
данных, в результате чего пользователю и его прикладным программам все
данные представляются единым информационным массивом. Следование
принципу интеграции обеспечивает:
· упрощение поиска взаимосвязанных данных и их совместную
обработку;
· уменьшение избыточности данных;
· упрощение процесса ведения БД.
Принцип централизации управления состоит в передаче всех функций
управления данными единому комплексу управляющих программ – СУБД.
Жизненный цикл базы данных (ЖЦБД) - это процесс проектирования,
реализации и поддержки базы данных.
Концептуальное
проектирование
БД
необходимо
для
создания
информационной модели предприятия (предметной области), не зависящей от
каких- либо физических условий реализации. К последним относятся: тип
СУБД, --- программ приложения, используемый язык программирования,
конкретная вычислительная платформа и другие физические особенности
реализации.
Логическое
информационной
проектирование
модели
БД
предприятия
необходимо
для
на
разработанного
основе
создания
концептуальной модели с учетом используемого типа СУБД (но не
конкретной СУБД и прочих физических условий реализации).
Физическое проектирование БД
- это процесс создания описания
конкретной реализации БД с учетом особенностей выбранной СУБД. Эта фаза
заканчивается созданием конкретной БД для создаваемого приложения, на
основании разработанной ранее логической модели.
Проектирование базы данных может предусматривать выбор наиболее
подходящего инструмента автоматизированного проектирования - CASEинструмента (Computer-Aided Software Engineering).
В самом широком смысле термин CASE- инструмент применим к
любым средствам автоматизированного проектирования и создания программ.
CASE- инструменты могут включать следующие компоненты:

словарь данных, предназначенный для хранения информации в
данных, используемых в создаваемом приложении;

инструменты проектирования, обеспечивающие проведение анализа
данных;

инструменты разработки модели данных предприятия (модели бизнес-
процесса), а также концептуальных и логических моделей данных;

инструменты, позволяющие создавать прототипы приложений.
Использование CASE-инструментов позволяет существенно повысить
производительность труда при разработке приложений баз данных.
Можно выделить основные типы администраторов, характерные для всех
систем:
· администраторы баз данных, администраторы по защите данных;
компьютерные администраторы;
· сетевые администраторы;
· администраторы Интернет (Web–мастера);
· администраторы телефонной связи;
· администраторы голосовой почты;
· администраторы почтовых систем;
· администраторы мэйнфреймов;
· администраторы приложений.
Обязанности администратора баз данных:
· инсталляция и обновление версий сервера и прикладных инструментов
распределение дисковой памяти и планирование будущих требований
системы к памяти
· создание первичных структур памяти в базе данных (табличных
пространств) по мере проектирования приложений разработчиками
приложений
· создание первичных объектов (таблиц, представлений, индексов) по
мере проектирования приложений разработчиками
· модификация структуры базы данных в соответствии с потребностями
приложений
· зачисление пользователей и поддержание защиты системы
· управление и отслеживание доступа пользователей к базе данных
отслеживание и оптимизация производительности базы данных
· планирование и выполнение качественного резервного копирования и
стратегии восстановления;
· поддержание архивных данных на устройствах хранения информации
обращение за техническим сопровождением
· установка
нового
программного
обеспечения
(очень
важно
протестировать все программы перед введением их в рабочую среду);
· конфигурация программного и аппаратного обеспечения (вместе с
системным администратором);
· периодическая проверка производительности системы и произведение
изменений для поддержки необходимого уровня производительности;
поддержка целостности данных БД;
· обеспечение безопасности;
· процедура
планового
обслуживания
(в
обслуживание
входят
архивирование, тестирование и настройка);
· локализация неисправностей;
· восстановление системы после сбоя.
Дополнительные обязанности администратора баз данных:
· анализ данных;
· разработка БД (предварительная);
· моделирование и оптимизация БД;
· предоставление помощи разработчикам по SQL и хранимым
процедурам;
· разработка производственных стандартов и соглашений по именам;
· документирование среды;
· консультирование разработчиков и конечных пользователей;
· проверка и тестирование новых программ;
· оценка приобретений нового программного и аппаратного обеспечения;
· планирование нагрузки системы и необходимого объема памяти.
· создание резервных копий файлов (для баз данных и проектов);
· периодическое сжатие файлов (для баз данных);
· защита файлов средствами шифрования (для баз данных);
· изменение пароля для открытия файла (для баз данных);
· управление учетными записями и правами доступа для приложений,
защищённых на уровне пользователей (для баз данных и проектов);
· установка приложения, разделенного на файл объектов данных и файл
объектов приложения, на новую рабочую станцию и обновление ссылок
на связанные таблицы (для баз данных);
· установка клиентского приложения на новую рабочую станцию и
корректное подключение ее к базе данных, установленной на сервере
(для проектов).
Типовые обязанности администратора
· архивирование, сжатие и восстановление баз данных;
· защита информации с помощью средств шифрования;
· администрирование защищенной базы данных или проекта MS Access.
Администратор базы данных — это должностное лицо, которое отвечает
за обслуживание СУБД.
Основные объекты СУБД: таблицы, формы, запросы, отчеты.
Таблица- это объект предназначенный для хранения данных в виде записей
(строк) и полей (столбцов). Обычно каждая таблица используется для
хранения сведений по одному конкретному вопросу.
Форма — объект базы данных, отображающий данные в виде, удобном для
восприятия пользователя.
Запрос - объект БД, позволяющий получить нужные данные из одной или
нескольких таблиц.
Отчет - объект БД предназначенный для печати данных. Каждый объект
MS Access имеет имя. Длина имени не более 64 символов, включая русские
буквы и пробел (исключение - точка и некоторые специальные символы).
Поле - элемент таблицы, столбец или ячейка.
Запись - полный набор данных об определенном объекте, в режиме таблицы
это строка.
Макрос - набор специальных макрокоманд (открыть форму, напечатать
отчет).
Модуль - это программа, написанная на специальном языке.
Страница доступа к данным – это диалоговая Web-страница, которая
поддерживает
динамическую
связь
с
базой
данных
и
позволяет
просматривать, редактировать и вводить данные в базу.
Страница доступа к данным сохраняется не в базе данных, а в HTML-файле.
Запуск и останов базы данных - это мощные административные
возможности.
Экземпляр СУБД – набор фоновых процессов, осуществляющих доступ к
данным и управляющих файлами, которые обеспечивают физическое
хранение информации.
Для того чтобы база данных стала работоспособной и открытой для
пользователя, экземпляр должен пройти через несколько стадий: запуск
процессов, монтирование базы данных и её открытие.
Первая стадия включает в себя запуск процессов управления базой данных
и выделение памяти для SGA (системная глобальная область СУБД ORACLE).
На этой стадии используется файл INIT.ORA, в котором хранятся все
настройки СУБД.
На второй стадии осуществляется монтирование базы данных. В процессе
монтирования базы, подключаются файлы, обеспечивающие хранение
информации. В монтировании участвует управляющий файл, имя которого
записано в INIT.ORA.
Последняя третья стадия обеспечивает открытие доступа для
пользователей базы дынных.
Запуск экземпляра, обеспечивающий доступ пользователей к базе данных
может быть осуществлен либо с помощью интерактивной оболочки, либо с
помощью утилиты SVRMGR.
Для подключения к системе управления базой данных с использованием
утилиты SVRMGR необходимо задать командную строку
Команда для перевода базы данных из одного состояния в другое имеет вид
STARTUP [FORCE ] [RESTRICT][PFILE=имя_файла]
[NOMOUNT | MOUNT [RECOVER][имя БД] | OPEN |]
FORCE используется для перезапуска уже запущенного экземпляра.
RESTRICT обеспечивает ограничение доступа непривилегированным
пользователям для входа в базу данных. В этом режиме база данных доступна
только административному персоналу.
NOMOUNT, MOUNT и OPEN состояния базы данных.
Остановка базы данных осуществляется командой
SHUTDOWN[NORMAL|IMMEDIATE|ABORT]
При выборе режима NORMAL запрещены новые соединения. Сервер
Oracle ждет, пока все пользователи закроют свои соединения перед
выполнением остановки экземпляра. При следующем запуске не требуется
восстановление экземпляра. По умолчанию остановка выполняется в режиме
NORMAL.
Режим IMMEDIATE обеспечивает прекращение выполнения текущих
команд SQL. Откатываются все незавершенные транзакции. Сервер Oracle не
ждет, пока соединенные с базой данных пользователи закроют свои
соединения. SHUTDOWN IMMEDIATE закрывает и размонтирует базу
данных, корректно останавливает экземпляр. При следующем запуске не
требуется восстановление экземпляра.
Режим ABORT используется для немедленного прекращения работы
базы данных. Прекращается выполнение текущих команд SQL. He отменяются
незавершенные транзакции. Сервер Oracle не ждет, пока соединенные с базой
данных пользователи закроют свои соединения. SHUTDOWN ABORT не
закрывает и не размонтирует базу данных, но останавливает экземпляр. При
следующем запуске потребуется восстановление экземпляра (которое может
производиться автоматически).
Пользователь БД (user) - это физическое или юридическое лицо,
которое имеет доступ к БД и пользуется услугами информационной системы
для получения информации.
Конечные пользователи - это основная категория пользователей, в
интересах которых создается БД.
Администратор базы данных (АМД) – это лицо или группа лиц,
отвечающих за выработку требований к базе данных, ее проектирование,
создание, эффективное использование и сопровождение.
Разработчики и администраторы приложений - это группа
пользователей, которая функционирует во время проектирования, создания и
реорганизации БД.
Администраторы приложений координируют работу разработчиков
при разработке конкретного приложения или группы приложений,
объединенных в функциональную подсистему.
Схема базы данных (от англ. Database schema) — её структура,
описанная на формальном языке, поддерживаемом СУБД.
Схема базы данных — это структура и организация базы данных,
которая определяет ее таблицы, поля, связи, ограничения и типы данных.
Физическая схема представляет фактическую структуру физического
хранилища базы данных на диске. Он включает в себя механизмы хранения,
файловые структуры, индексы и другие детали низкого уровня, которые
определяют, как данные хранятся и получают к ним доступ со стороны
базовой системы управления базами данных (СУБД) . Этот тип схемы в
основном связан с эффективным использованием пространства хранения,
повышением производительности базы данных за счет оптимизации операций
поиска и хранения данных.
Логическая схема — это абстракция более высокого уровня, которая
описывает организацию данных в базе данных с точки зрения таблиц, полей,
связей и ограничений. Он не зависит от физической схемы и фокусируется на
том, как данные логически организованы и связаны. Логическая схема
обеспечивает четкое понимание структуры базы данных и помогает
разработчикам
и
администраторам
проектировать
и
реализовывать
приложения, взаимодействующие с базой данных, определяя, как элементы
данных связаны друг с другом.
Концептуальная
схема
—
это
высший
уровень
абстракции,
представляющий логическое представление всей базы данных, как ее
воспринимают конечные пользователи или разработчики приложений. Он
состоит из унифицированного набора сущностей, атрибутов и связей,
представляющих
информационные
требования
определенной
группы
пользователей или приложений. Цель концептуальной схемы — уловить суть
данных, не уделяя внимания деталям, специфичным для реализации, облегчая
общение между различными заинтересованными сторонами, участвующими в
проектировании, разработке и использовании базы данных.
Таблица — это набор связанных данных, организованных в строки и
столбцы, представляющие записи и поля соответственно. Таблицы являются
основой схемы и служат основным средством хранения и управления данными
в базе данных. Каждая таблица в схеме предназначена для хранения
определенного типа сущности (например, клиентов, продуктов, заказов) и
содержит набор атрибутов, характеризующих сущность.
Поля (или столбцы) — это отдельные элементы данных в таблице, в
которых хранится конкретная информация об объекте. Каждое поле
определяется именем, типом данных (например, текст, целое число, дата) и
дополнительными ограничениями, такими как «не пустое» или «уникальное».
Это позволяет точно контролировать тип хранения данных в каждом поле и
помогает поддерживать целостность данных.
Отношения определяют взаимосвязь между таблицами, определяя, как
данные в одной таблице связаны с данными в другой. В схеме базы данных
существует три основных типа отношений:
Один-к-одному: объект в одной таблице связан с одним объектом в
другой таблице (например, пользователь и профиль пользователя).
Один ко многим: объект в одной таблице связан с несколькими
объектами в другой таблице (например, клиент и его заказы).
Многие-ко-многим: несколько объектов в одной таблице связаны с
несколькими объектами в другой таблице (например, продуктами и
категориями).
Отношения имеют решающее значение для структуры и функций схемы,
поскольку они обеспечивают эффективные средства получения данных и
управления ими.
Ограничения — это правила, налагаемые на данные для поддержания
согласованности, целостности и достоверности в схеме. Обычно они
применяются
к
определенных
полям
условий,
или
таблицам
которые
и
должны
обеспечивают
соблюдаться
соблюдение
при
вставке,
обновлении или удалении данных. Общие типы ограничений включают в себя:
Первичный ключ: уникальный идентификатор для каждой записи в
таблице (например, идентификатор клиента, номер заказа).
Внешний ключ: поле, которое определяет связь между двумя таблицами
путем ссылки на первичный ключ в другой таблице.
Уникальность: гарантирует, что данные в данном поле уникальны в
пределах таблицы.
Не ноль: требуется, чтобы данные в данном поле не могли оставаться
пустыми (ноль).
Индексы — это структуры данных, которые повышают
производительность операций поиска данных, обеспечивая более быстрый
способ поиска определенных записей в таблице. Они работают аналогично
индексу книги, позволяя СУБД быстро найти и получить доступ к нужным
данным без необходимости сканирования всей таблицы. Индексы могут быть
созданы для одного или нескольких полей, в зависимости от требований схемы
и запросов, выполняемых к базе данных. Тем не менее, хотя индексы и
повышают скорость получения данных, они также могут привести к
увеличению накладных расходов при вставке, обновлении или удалении
записей. Поэтому крайне важно тщательно продумать, когда и где
использовать индексы в вашей схеме.
Привилегия - это поддерживаемый системой признак, который
определяет, может ли конкретный пользователь выполнить конкретную
операцию, т.е. разрешение на выполнение в системе определенного действия.
Привилегии – это права, назначаемые отдельным пользователям или
ролям.
Привилегии делятся на два основных вида:
Системная привилегия - это привилегия, которая дает пользователю
право на выполнение какой-либо операции в масштабе базы данных.
Привилегия прав доступа к объекту - это разрешение пользователю на
выполнение определенной операции над определенным объектом базы
данных.
Стабильная система управления пользователями – обязательное
условие безопасности данных, хранящихся в любой реляционной СУБД.
Табличное
пространство
-
это физический
объект
хранения,
предоставляющий уровень непрямой связи между базой данных и таблицами,
хранящимися в ней.
Контейнер -
это
пространство,
выделенное
для
табличного
пространства.
Табличное пространство (tablespace) – это набор, состоящий из одного
или нескольких файлов данных.
В базе данных существуют следующие структуры хранения:
- Логические: база данных, схема, табличное пространство, сегмент, экстент,
блок Oracle,
- Физические: файлы данных, файлы параметров, журналы и блок ОС.
Файл
базы
данных используются
для
хранения
данных
в
организованной и структурированной форме. Он хранит данные в виде записи
в виде строк и столбцов, которые могут быть легко извлечены с помощью
программного обеспечения или веб-приложений.
Модели баз данных — это фундаментальные структуры, которые
определяют, как данные будут организованы, сохранены и доступны в
системе.
Иерархическая модель базы данных — одна из самых ранних моделей,
организующая данные в древовидную структуру с одним корневым узлом,
соединенным с несколькими дочерними узлами. У каждого дочернего узла
может быть один или несколько дочерних узлов, но у них может быть только
один родительский узел.
Реляционная модель данных. Понятие реляционный (англ. relation отношение) связан с разработками известного американского специалиста в
области систем баз данных Э.Ф. Кодда. Эти модели характеризуются
простотой
структуры
данных,
удобной
для
пользователя
формой
представления в виде таблиц и возможностью использования аппарата
алгебры отношений и реляционного вычисления для обработки данных.
Сетевая модель означает представление данных в виде произвольного
графа.
Узел - это совокупность атрибутов данных, которые описывают
некоторый объект.
Блоки данных (Data Block) - мельчайший строительный блок базы
данных Oracle, состоящий из определенного количества байт на диске.
Блок данных Oracle - логический компонент базы данных.
Экстенты (extent) - это два или более последовательных блоков данных
Oracle, представляющий собой единицу выделения места на диске.
Сегменты (segments) - набор экстентов, которые вы выделяете
логической структуре, такой как таблица или индекс (или некоторый другой
объект).
Основных компонентов структуры памяти БД три, это:

SGA (System Global Area - глобальная область системы) Совместно
используемый сегмент памяти, к которому обращаются все процессы БД.

PGA (Process Global Area - глобальная область процесса) Приватная
область
памяти
процесса
или
потока,
недоступная
другим
процессам/потокам.

UGA (User Global Area - глобальная область пользователя) Область
памяти сессии пользователя. Эта область памяти может находиться либо в
SGA, либо в PGA. Если сервер работает в режиме распределённого
сервера, она располагается в SGA, если в режиме выделенного сервера, то
в PGA.
SGA – наиболее важный компонент памяти в экземпляре Oracle.
Download