- •Обзор баз данных Oracle
- •Обзор Oracle
- •Теоретические и физические аспекты реляционных баз данных
- •Рсубд против систем плоских файлов: быстрое ознакомление
- •Закрепление пройденного материала
- •Упражнения
- •Реализации рсубд и орсубд Oracle
- •Дисковые компоненты Oracle
- •Что такое орсубд
- •Закрепление пройденного материала
- •Упражнения
- •Процесс сервера и фоновые процессы Oracle
- •Использование и преимущества pl/sql
- •Закрепление пройденного материала
- •Упражнения
- •Написание основных операторов sql
- •Возможности операторов sql select
- •Познакомьтесь: sql* Plus
- •Закрепление пройденного материала
- •Упражнения
- •Выполнение операторов select
- •Задание префиксов столбцам по имени таблицы
- •Арифметические данные и данные из таблиц
- •Старшинство операторов
- •Обработка значений null
- •Замена заголовков столбцов псевдонимами
- •Объединение столбцов с помощью конкатенации
- •Закрепление пройденного материала
- •Упражнения
- •Различия между командами sql и sql*Plus
- •Использование текстового редактора
- •Запись команд sql в сценариях
- •Другие команды sql*Plus, о которых следует знать
- •Закрепление пройденного материала
- •Упражнения
- •Резюме Обзора баз данных Oracle
- •Двухминутное погружение в пройденное
- •Вопросы для самопроверки
- •Вопросы ко всей теме
Рсубд против систем плоских файлов: быстрое ознакомление
В таблице 1.1 проводится сравнение систем с плоскими файлами и реляционных систем управления базами данных.
Таблица 1. Сравнение реляционных баз данных с другими системами управления данными
|
Задача |
Система с плоскими файлами |
РСУБД |
|
Обрабатывает отношения "родитель-потомок"? |
Да |
Да |
|
Обрабатывает другие типы отношений? |
Не слишком хорошо |
Да |
|
Легко ли справляется с манипулированием данными? |
Нет |
Да |
|
Легко ли адаптируется к изменению бизнес- потребностей? |
Нет |
Да |
|
Легко ли справляется с выборкой данных? |
Иногда |
Да |
|
Быстро ли выполняет выборку данных? |
Иногда |
Иногда |
Закрепление пройденного материала
Какие задачи выполняет за кулисами РСУБД, когда пользователи запрашивают определенного рода данные?
Убедитесь, что можете описать характеристики, преимущества и недостатки систем с плоскими файлами и реляционных систем управления базами данных.
Упражнения
1. Вы исследуете теоретические аспекты РСУБД Oracle. Какой из четырех вариантов выбора идентифицирует аспект управления данными, который РСУБД Oracle не обрабатывает от вашего имени?
A. Преобразование типов данных
B. Чтение с диска
C. Сортировка и форматирование возвращаемых данных
D. Определение требующейся информации через SQL
2. Вы производите оценку использования Oracle для замены б вашей организации унаследованных дореляционных систем. Если сравнивать с РСУБД Oracle, то с каким из перечисленных ниже аспектов дореляционные системы баз данных справлялись так же хорошо, как и их реляционные аналоги?
A. Отношения "многие ко многим"
B. Отношения "родитель-потомок"
C. Адаптируемость к изменению бизнес-потребностей
D. Манипулирование данными
3. Как звали того ученого, который первым концептуализировал использование реляционных систем управления базами данных?
Ответы
1. D. 2. В. 3. Е. Ф. Кодд
Реализации рсубд и орсубд Oracle
Хотя каждая реляционная база данных предлагает собственную РСУБД, которая воспринимает в основном одни и те же типы операторов SQL, не все базы данных имеют одинаковые компоненты. База данных Oracle значительно сложнее, чем многие базы данных для ПК, с которыми вам приходилось сталкиваться, например Microsoft Access или даже SQL Server. Компоненты базы данных Oracle можно разделить на три основные области, соответствующие трем основным областям тех хост-машин, на которых выполняется база данных Oracle. Советуем в этом разделе обратить особое внимание на то, как каждый компонент каждой части базы данных Oracle взаимодействует с компонентами других частей. На рис. 1.1 показаны различные части базы данных Oracle, знание которых самым тщательным образом проверяется во время экзамена на ОСР (1ZO-022): Основы администрирования баз данных I. Вот эти компоненты:
• Память Глобальную системную область Oracle (System Global Area —SGA) иногда называют также совместно используемой глобальной областью (Shared Global Area), потому что эта выделенная память совместно используется всеми пользователями базы данных Oracle.
• Диск Файлы данных Oracle, журналы базы данных, управляющие файлы и файлы параметров. В этих типах файлов содержатся данные, хранящиеся в базах данных Oracle.
• Процессы Потоки (нити) фонового процесса oracle.exe (для Windows) или индивидуальные процессы (UNIX) и процесс сервера. Именно эти процессы выполняют всю закулисную работу, обеспечивающую надлежащее функционирование баз данных Oracle.
SGA Oracle
Компонент памяти Oracle — SGA — состоит из нескольких элементов, каждый из которых предназначен для конкретной цели.
Буферный кэш С помощью буферного кэша Oracle хранит данные для пользователей в памяти, чтобы они могли просматривать или изменять их. Таким образом, пользователи никогда не делают изменений непосредственно в дисковых файлах. Вместо этого Oracle считывает необходимые данные в память, чтобы процесс пользователя мог изменить их, а затем в какой-то момент времени записывает их обратно на диск. Модифицированный алгоритм LRTJ (алгоритм удаления наиболее давно использовавшихся элементов) используется буферным кэшем для определения того момента, когда можно будет удалить данные из этой области, так как в буферном кэше требуется освободить место для затребованной пользователем информации. Информация из буферного кэша может совместно использоваться всеми пользователями, подключенными в данный момент к базе данных Oracle.
Журнальный буфер В журнальном буфере хранится специальная информация, которая называется информацией для повторного выполнения операций (redo) и используется Oracle для помощи при реконструкции изменений в данных в случае отказа системы. Информация для повторного выполнения операций записывается в журнальный буфер пользователями, выполняющими изменения в данных, и хранится в нем до тех пор, пока Oracle не сможет записать информацию для повторного выполнения операций на диск.
Разделяемый пул В разделяемом пуле хранятся многие элементы, являющиеся стратегически важными для функционирования базы данных Oracle. Компонентами разделяемого пула являются библиотечный кэш, словарный кэш, а также фиксаторы (latches) и другие механизмы управления базой данных. Библиотечный кэш используется для хранения разобранных операторов SQL, чтобы их могли повторно использовать другие пользователи. Словарный кэш, или кэш строк, используется для хранения информации из словаря Oracle в оперативной памяти, где к ней можно быстро обратиться.
Совет Словарем данных Oracle называется набор информации, хранящийся в среде Oracle и содержащий все наиболее важное относительно базы данных. Словарь данных часто используется как пользователями, так и процессами Oracle, так что для достижения высокой общей производительности базы данных важно всегда, когда это возможно, хранить информацию словаря в оперативной памяти. Отсюда становится очевидной необходимость размещения словарного кэша в разделяемом кэше.
Большой пул Четвертым и наименее часто используемым компонентом Oracle SGA является так называемый большой пул, представляющий большую выделенную область памяти, используемую для поддержки операций Oracle по резервному копированию и восстановлению, серверных процессов ввода-вывода и сеансовой памяти для разделяемого сервера. Этот впервые появившийся в Oracle8 компонент является необязательным для работы базы данных Oracle.
Другие области памяти В Oracle8i и более поздних версиях имеются и другие компоненты SGA, например пул Java и большой пул, которые не показаны на рис. l. Эти элементы не включены в обсуждение и (или) в рисунок, так как детальное исследование этих вопросов необязательно для сдачи экзамена ОСР по SQL. Рис. l и настоящее обсуждение служат для того, чтобы показать вам общую картину Oracle, перед тем как погрузиться в целенаправленное обсуждение запросов SQL.
