Вторник, 16.04.2024, 09:13

Вы вошли как Гость | Группа "Гости" | RSS
Главная Каталог статей
Меню сайта

Категории раздела
Администрирование информационных систем [44]
Операционные системы [0]
Архитектура [0]
Сети передачи данных [29]
ЭВМ [0]
Надежность информационных систем [0]
Безопасность [0]
Корпоративные информационные сети [6]

Liveinternet

Главная » Статьи » Информационные технологии » Администрирование информационных систем

Общая характеристика продуктов Oracle

Общая характеристика продуктов Oracle

Все продукты Oracle (СУБД, средства разработки, средства для конечного пользователя, сетевые компоненты) являются открытыми, масштабируемыми и программируемыми. Они позволяют разрабатывать приложения, как уровня небольшой рабочей группы, так и уровня огромного предприятия с тысячами пользователей, терабайтными базами, размещенными в различных зданиях и даже странах.

Средства Oracle позволяют надежно защитить эти данные, обеспечить их целостность и непротиворечивость. Продукты Oracle работают более чем на ста вычислительных платформах (компьютер + операционная система), поддерживают все основные промышленные сетевые протоколы и графические оконные среды. Это позволяет с минимальными затратами переносить готовые приложения с одной платформы на другую. Например, разработав приложение на однопроцессорном персональном компьютере с MS Windows, можно далее выполнять его на Unix-машинах, больших IBM машинах, SMP и MPP архитектурах, высоконадежных и кластерных архитектурах.

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

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

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

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

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

Структура памяти

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

Глобальная область системы (SGA) - это область разделяемой памяти, распределяемая ORACLE, которая содержит данные и управляющую информацию для одной инстанции ORACLE. Область SGA и фоновые процессы ORACLE составляют инстанцию ORACLE. SGA распределяется при запуске инстанции и освобождается при закрытии инстанции. Каждая запускающаяся инстанция имеет свою собственную область SGA. Данные в SGA разделяются (т.е. совместно используются) всеми пользователями, присоединенными к базе данных. Для оптимальной производительности SGA должна быть максимально большой (пока позволяет реальная память), чтобы держать как можно больше данных в памяти и минимизировать дисковые операции. Информация, хранящаяся в SGA, подразделяется на несколько типов структур памяти, включая буферы базы данных, буферы журнала повторения и разделяемый пул. Эти области имеют фиксированные размеры и создаются при запуске инстанции. Буферный кэш базы данных в SGA хранит наиболее недавно использовавшиеся блоки данных из базы данных; его составляет все множество буферов базы данных в инстанции. Эти буферы могут содержать модифицированные данные, которые еще не записаны на диск для постоянного хранения. Поскольку последние использовавшиеся (в том числе и наиболее часто использующиеся) данные поддерживаются в памяти, требуется меньше дисковых операций, и производительность увеличивается. Буфер журнала повторения в SGA хранит записи повторения - журнал изменений, осуществленных в базе данных. Записи повторения, хранящиеся в буферах журнала повторения, записываются в онлайновый файл журнала, который используется при необходимости восстановления базы данных. Его размер статичен. Разделяемый пул - это часть SGA, содержащая конструкты разделяемой памяти, такие как разделяемые области SQL. Разделяемая область SQL требуется для обработки каждого уникального предложения SQL, выданного базе данных. Разделяемая область SGA содержит такую информацию, как дерево разбора и план исполнения для соответствующего предложения. Единственная разделяемая область SGA используется всеми приложениями, которые выдают то же самое предложение. Это позволяет оставлять больше разделяемой памяти для других целей.

Курсор - это описатель (имя или указатель) области памяти, ассоциированной с конкретным предложением. Хотя большинство пользователей ORACLE полагаются на автоматическую обработку курсоров, обеспечиваемую утилитами ORACLE, программные интерфейсы предлагают разработчикам приложений большую степень контроля над курсорами. Например, при разработке приложений предкомпиляторов курсор является именованным ресурсом, доступным программе, и может специально использоваться для разбора предложений SQL, встроенных в приложение. Разработчик может написать приложение так, чтобы оно контролировало фазы исполнения предложения SQL и за счет этого повышало свою производительность.

Глобальная  область программы (PGA) - это буфер памяти, содержащий данные и управляющую информацию для процесса сервера. PGA создается ORACLE при запуске процесса сервера. Информация в области PGA зависит от конфигурации ORACLE.

 

Каждая база данных ORACLE имеет один или более физических файлов данных. Эти файлы содержат все данные базы данных. Данные логических структур базы данных, таких как таблицы и индексы, физически хранятся в файлах данных, распределенных для базы данных. Файл данных может быть ассоциирован лишь с одной базой данных. Однажды созданный файл данных не может изменить свой размер. Один или несколько файлов данных формируют логическую единицу пространства базы данных, называемую табличным пространством. Данные в файле данных считываются по мере необходимости во время нормальной работы базы данных, и размещаются в Кэш памяти ORACLE. Модифицированные или новые данные необязательно записываются в файл данных немедленно. Чтобы уменьшить объем дисковых операций и увеличить производительность, данные накапливаются в памяти, и записываются в соответствующие файлы данных одномоментно, как определяется фоновым процессом ORACLE, называемым DBWR.

Каждая база данных ORACLE имеет набор из двух или более файлов журнала повторения работы. Комплект файлов журнала повторения работы для одной базы данных совместно называется журналом повторения (redo log). Основная функция журнала повторения - регистрация всех изменений, осуществляемых в данных. Все изменения, выполняемые в базе данных, записываются в журнал повторения. Если в результате сбоя модифицированные данные не удастся постоянно записать в файлы данных, эти изменения можно получить из журнала повторения, так что работа никогда не теряется. Файлы журнала повторения критичны в вопросе защиты базы данных от сбоев. Чтобы защититься от таких сбоев, которые затрагивают сам журнал повторения, ORACLE допускает зеркальный журнал повторения, так что две или более копий журнала повторения можно поддерживать одновременно на разных дисках. Информация в файле журнала повторения используется только для восстановления базы данных после сбоя системы или носителя, в результате которого данные базы данных не могут быть записаны в файлы данных. Например, когда неожиданное отключение питания резко прерывает работу базы данных, данные в памяти не могут быть записаны в файлы данных. Однако все потерянные данные могут быть восстановлены при последующем открытии базы данных после устранения неисправности в питании. ORACLE автоматически применяет к файлам базы данных все изменения, зарегистрированные в самых последних файлах журнала повторения, и восстанавливает базу данных в состояние на момент сбоя. Процесс применения журнала повторения в процессе операции восстановления базы данных называется прокруткой вперед.

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

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

 

Процессы

Процесс - это "канал управления", механизм в операционной системе, который исполняет последовательность шагов. Некоторые операционные системы используют термины «задание» или «задача». Процесс обычно имеет собственную область личной памяти, в которой он работает. СУБД ORACLE имеет два общих типа процессов: пользовательские процессы и процессы ORACLE. Пользовательский процесс создается и поддерживается для исполнения программного кода прикладной программы (такой как программа Pro*C) или инструмента ORACLE (такого как SQL*DBA). Пользовательский процесс также управляет взаимодействием с процессами сервера.

Процессы ORACLE вызываются другими процессами для того, чтобы выполнять функции от имени вызывающего процесса.

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

ORACLE создает множество фоновых процессов для каждой инстанции. В фоновых процессах сосредоточены те функции, которые иначе пришлось бы выполнять множеством программ ORACLE, запускаемых для каждого пользовательского процесса. Фоновые процессы асинхронно выполняют операции ввода-вывода и отслеживают другие процессы ORACLE, обеспечивая лучший параллелизм и улучшая производительность и надежность. Область SGA и фоновые процессы ORACLE в совокупности составляют инстанцию ORACLE (конкретная реализация системы). Каждая инстанция ORACLE может использовать несколько фоновых процессов.

 

 
Категория: Администрирование информационных систем | Добавил: Admin (09.12.2010)
Просмотров: 36243 | Комментарии: 1 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Поиск

Поиск Google

Copyright MyCorp © 2024 Бесплатный конструктор сайтов - uCoz