Системная архитектура и структура ORACLE

Автор работы: Пользователь скрыл имя, 06 Октября 2013 в 15:45, реферат

Краткое описание

На мировом рынке корпоративных систем управления базами данных (СУБД) доминирующее положение занимает традиционная тройка продуктов: IBM DB2, Microsoft SQL Server и Oracle. Более 80% рынка СУБД в течение долгих лет контролируется тремя компаниями производителями: IBM, Oracle и Microsoft.
По статистическим данным на рынке России лидирующее положение занимает Oracle, так как по статистическим данным за 2010 год, данная СУБД занимает более 60% всего рынка, среди других СУБД и около 30% мирового рынка СУБД.
СУБД Oracle имеет большое количество различных версии и типов. Данная СУБД выпускается одноименной компанией Oracle.

Прикрепленные файлы: 1 файл

сам реферат.docx

— 37.04 Кб (Скачать документ)

ВВЕДЕНИЕ

На мировом рынке корпоративных  систем управления базами данных (СУБД) доминирующее положение занимает традиционная тройка продуктов: IBM DB2, Microsoft SQL Server и Oracle. Более 80% рынка СУБД в течение  долгих лет контролируется тремя  компаниями производителями: IBM, Oracle и Microsoft.

По статистическим данным на рынке  России лидирующее положение занимает Oracle, так как по статистическим данным за 2010 год, данная СУБД занимает более 60% всего рынка, среди других СУБД и около 30% мирового рынка СУБД.

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

Компания Oracle была основана нынешним президентом компаний Лэрри Элисоном и Роберттом Майнором в 1977 году, в  Рэдвуде, штат калифорния. Первая реляционная  СУБД фирмы базировалась на модели IBM System/R и была первой системой, в  которой использовался язык SQL, разработанный  фирмой IBM.

На сегодняшний день СУБД Oracle поддерживают свыше 80 вариантов операционной среды  в широком диапазоне, включая  мэйнфреймы IBM, мини-компьютеры DEC VAX, UNIX, Windows и множество других платформ.

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

Для интернет-систем (public) и систем масштаба крупной организации (enterprise) предлагается продукт Oracle9i Database Enterprise Edition (корпоративная редакция), для которого имеется целый набор опций, архитектурно и функционально расширяющих возможности сервера. Продукт Oracle9i Database Standard Edition (стандартная редакция) ориентирован на организации среднего масштаба или подразделения в составе крупной организации (workgroup). Для персонального использования предлагается "персональный Oracle" (Oracle9i Database Personal Edition) , и для систем мобильной связи и небольших офисов — Oracle9i Database Lite. В стандартной, персональной и мобильной редакциях основной акцент сделан на невысокую стоимость, простоту установки и сопровождения. При этом все варианты сервера Oracle имеют в своей основе один и тот же исходный код и  функционально идентичны , за исключением некоторых дополнительных опций, которые необходимы для специфических конфигураций (например, для поддержки кластерных архитектур необходима опция Oracle9i Real Application Clusters). 

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

Одной из основных характеристик СУБД Oracle является функционирование системы  на большинстве платформ. В том  числе на больших ЭВМ, UNIX-серверах, персональных компьютерах и т. д.

 

 

 

 

  1. СИСТЕМНАЯ АРХИТЕКТУРА ORACLE

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

Механизмы ORACLE работают через использование  структур памяти  и процессов.  Все структуры памяти располагаются  в основной памяти (иногда называемой виртуальной памятью или памятью  произвольного доступа)   компьютеров,   составляющих   систему   базы  данных. ПРОЦЕССЫ  -  это  задания  или  задачи, работающие в памяти этих компьютеров.

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

ГЛОБАЛЬНАЯ  ОБЛАСТЬ  СИСТЕМЫ  (SGA)  -  это  область разделяемой памяти,  распределяемая  ORACLE,   которая  содержит  данные   и управляющую  информацию для одной инстанции ORACLE.  Область  SGA и  фоновые  процессы  ORACLE  составляют инстанцию ORACLE. SGA  распределяется  при  запуске  инстанции и освобождается при  закрытии инстанции.  Каждая  запускающаяся  инстанция имеет  свою собственную  область SGA. Данные  в  SGA  разделяются  (т.е. совместно используются) всеми  пользователями, присоединенными к  базе данных.  Для  оптимальной  производительности  SGA  должна  быть  максимально большой (пока позволяет  реальная  память),  чтобы  держать  как  можно больше данных в памяти и минимизировать дисковые операции.  Информация, хранящаяся  в  SGA,  подразделяется  на несколько типов структур памяти, включая буфера базы данных, буфера журнала повторения  и разделяемый пул.   Эти области имеют фиксированные размеры и создаются при запуске инстанции.

БУФЕРА   БАЗЫ   ДАННЫХ    в   SGA   хранят    наиболее   недавно  использовавшиеся  блоки  данных  из  базы  данных; все множество  буферов базы  данных в  инстанции  составляет  БУФЕРНЫЙ КЭШ  БАЗЫДАННЫХ.   Эти  буфера  могут  содержать  модифицированные данные, которые  еще  не  записаны  на  диск  для  постоянного хранения.

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

БУФЕР ЖУРНАЛА ПОВТОРЕНИЯ в SGA хранит ЗАПИСИ ПОВТОРЕНИЯ – журнал изменений,  осуществленных  в  базе  данных.  Записи повторения, хранящиеся  в   буферах  журнала   повторения,  записываются   в онлайновый файл журнала, который используется при  необходимости восстановления базы данных.  Его размер статичен.

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

ГЛОБАЛЬНАЯ  ОБЛАСТЬ   ПРОГРАММЫ  (PGA)   -  это   буфер  памяти,  содержащий данные и управляющую информацию для процесса сервера.PGA создается ORACLE при запуске процесса сервера.  Информация вобласти PGA зависит от конфигурации ORACLE.

ORACLE можно конфигурировать на различное  число пользовательских процессов  на один  процесс сервера.  В   КОНФИГУРАЦИИ ВЫДЕЛЕННОГОСЕРВЕРА  каждый  процесс сервера  обрабатывает  запросы  для одного пользовательского   процесса.    КОНФИГУРАЦИЯ    МНОГОКАНАЛЬНОГОСЕРВЕРА  позволяет   многим  пользовательским процессам  совместно использовать  небольшое   число  процессов  сервера,  минимизируя количество процессов  сервера и максимизируя утилизацию  доступных системных ресурсов.

ORACLE создает множество ФОНОВЫХ ПРОЦЕССОВ  для каждой инстанции. В   фоновых  процессах  сосредоточены   те  функции, которые иначе  пришлось бы  выполнять множеством  программ ORACLE,  запускаемых для   каждого   пользовательского   процесса.    Фоновые  процессы  асинхронно выполняют операции  ввода-вывода и отслеживают   другие процессы  ORACLE,  обеспечивая   лучший  параллелизм  и   улучшая производительность и  надежность.

ПИСАТЕЛЬ  БАЗЫ  ДАННЫХ  записывает  модифицированные  блоки   из буферного кэша базы данных  в файлы данных.  Благодаря  способу, которым  ORACLE  осуществляет  журнализацию,  процессу  DBWR  не требуется записывать  эти блоки  при завершении  транзакции Вместо этого DBWR оптимизирован так, чтобы  минимизировать обращения  к диску.   В общем случае, DBWR  выполняет  запись  лишь  тогда,  когда  в  SGA   требуется прочитать  очередную порцию данных,  а в  буферном кэше  недостает свободных  буферов.   Первыми записываются  те данные,  к которым было самое  давнее обращение.

ПИСАТЕЛЬ  ЖУРНАЛА записывает  на диск записи  журнала повторения. Эти записи генерируются в буфере журнала повторения в SGA. Когда транзакция  завершается  и   буфер  журнала  заполняется,   LGWR переписывает   записи   журнала   повторения   в   файл  журнала повторения.

МОНИТОР СИСТЕМЫ осуществляет  восстановление инстанции во  время запуска  инстанции.   В  системе  с  несколькими инстанциями (при использовании   Параллельного   сервера),   процесс   SMON одной инстанции   может   также   осуществлять   восстановление других сбившихся  инстанций.   SMON  также  очищает временные  сегменты, которые  больше  не  используются,  и  восстанавливает   мертвые транзакции, пропущенные  после сбоя и восстановления инстанции  в результате сбоев файлов или  офлайновых ошибок. 

МОНИТОР  ПРОЦЕССОВ  осуществляет  восстановление  процесса после сбоя пользовательского  процесса.  PMON отвечает за очистку  КЭШа и освобождение ресурсов, использовавшихся процессом.  PMON также контролирует диспетчерские  и серверные  процессы, и рестартует их, если они сбиваются.

АРХИВАТОР  копирует  онлайновые   файлы  журнала  повторения   в архивную  память,  когда  они  переполняются.  ARCH активен лишь тогда, когда журнал повторения используется в режиме ARCHIVELOG.

ДИСПЕТЧЕРЫ - это  необязательные фоновые процессы,  существующие лишь в  конфигурации многоканального  сервера.  По  меньшей мере один диспетчерский  процесс  создается для каждого  используемого коммуникационного   протокола   (D000,   ...,   Dnnn).   

ПРОГРАММНЫЙ  ИНТЕРФЕЙС  -  это  механизм,  посредством  которого пользовательский  процесс  общается  с  процессом  сервера.   Он выступает  как  метод   стандартной  коммуникации  между   любым инструментом  или  приложением  клиента  (таким  как SQL*Forms) и программным обеспечением ORACLE. 

Если  пользовательский и  серверный процессы находятся  на разных компьютерах   в   сети,   или   если   пользовательские процессы присоединяются   к   разделяемым   серверным   процессам   через диспетчерские  процессы,   то  программный   интерфейс  включает физическое   сетевое    соединение,   программное    обеспечение коммуникации  и  SQL*Net.   SQL*Net  -  это  интерфейс  ORACLE к стандартным коммуникационным протоколам, обеспечивающий  должную  передачу данных между компьютерами.

Некоторые  архитектуры  оборудования  (например,  слабосвязанные процессоры) позволяют  нескольким компьютерам разделять  доступ  к данным, программному  обеспечению или  периферийным устройствам. ORACLE с  опцией Параллельного  сервера  использует  преимущества такой   архитектуры,   выполняя   несколько   инстанций, которые"разделяют" единую  физическую базу  данных.  В  соответствующих  приложениях, Параллельный сервер  ORACLE предоставляет доступ  к одной  базе данных  пользователей на разных  машинах, обеспечивая увеличенную  производительность. 

 

 

 

 

 

 

 

 

 

  1. ОСНОВНЫЕ ЭЛЕМЕНТЫ АРХИТЕКТУРЫ  ORACLE

Архитектура Oracle состоит из:

  • Файлы БД
  • Процессы
  • Области оперативной памяти

Файлы журналов повтора (журналы транзакций)

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

Управляющие файлы

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

База данных будет создавать и поддерживать управляющие файлы, заданные при  ее создании.

Трассировочные файлы

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

Журнал предупреждающих сообщений

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

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

Информация о работе Системная архитектура и структура ORACLE