архитектура базы данных oracle для windows

advertisement
Архитектура Oracle Database 11g для Windows
Техническое руководство Oracle
Июль 2007 г.
1
Архитектура Oracle Database 11g для Windows
РЕЗЮМЕ ............................................................................................................................................. 3
ВВЕДЕНИЕ ......................................................................................................................................... 3
АРХИТЕКТУРА БАЗЫ ДАННЫХ ORACLE ДЛЯ WINDOWS .................................................... 4
Потоковая модель ........................................................................................................................... 4
Услуги .............................................................................................................................................. 5
Усовершенствования масштабируемости .................................................................................... 5
4GB RAM Tuning (4GT) ............................................................................................................. 5
Very Large Memory (VLM)......................................................................................................... 6
Large Page .................................................................................................................................... 6
Настройки сходства и приоритета ............................................................................................ 7
Non-Uniform Memory Access (NUMA) ..................................................................................... 7
Усовершенствования записи/чтения файлов ............................................................................... 7
Кластерная файловая система ................................................................................................... 7
Запись/чтение 64-разрядных файлов ........................................................................................ 8
Поддержка неформатированных файлов ................................................................................. 8
Direct Network File System Client — нововведение в 11g ....................................................... 8
64-РАЗРЯДНЫЕ ОПЕРАЦИОННЫЕ СИСТЕМЫ WINDOWS ..................................................... 9
ЗАКЛЮЧЕНИЕ................................................................................................................................. 10
Архитектура Oracle Database 11g для Windows
Компания Oracle всегда стремится поддерживать операционную систему Windows в своих продуктах. В 1993 г. компания Oracle первой
выпустила реляционную базу данных для Windows NT. Компания Oracle внесла специальные изменения в свою базу данных, чтобы
повысить ее производительность и удобство использования в Windows.
РЕЗЮМЕ
Oracle Database 11g для Windows — это оптимизированная база данных, обеспечивающая масштабируемость,
надежность и высокую производительность на уровне предприятия. В этом руководстве описана архитектура базы
данных Oracle для Windows и ее отличия от аналогов в UNIX и Linux.
Благодаря собственной, основанной на потоках сервисной модели Windows, Oracle Database 11g гарантирует
высокую производительность и масштабируемость. База данных Oracle тесно интегрирована с расширенными
функциями операционной системы Windows и нижележащего оборудования, например поддержкой Large Page и
NUMA. Oracle обеспечивает производительность на уровне предприятия за счет поддержки большого объема
памяти, больших и неформатированных файлов и сетей вычислительных ресурсов.
База данных Oracle сертифицирована для 32-разрядных и 64-разрядных операционных систем Windows. 32разрядная база данных Oracle поддерживается в 32-разрядной Windows со стандартным оборудованием x86, включая
Windows Vista. В 64-разрядной Windows 64-разрядная база Oracle работает в операционных системах Windows x64
(AMD64/EM64T) и Windows Itanium. 64-разрядное оборудование обеспечивает повышенную масштабируемость и
производительность в сравнении с 32-разрядными системами.
ВВЕДЕНИЕ
База данных Oracle является одной из ведущих баз данных для платформы Windows. Компания Oracle была
изначально нацелена на создание самой высокопроизводительной и максимально интегрированной базы данных
для Windows и уже давно начала переносить технологии своей популярной базы данных UNIX на платформу
Windows. В 1993 г. компания Oracle первой выпустила реляционную базу данных для Windows NT.
Изначально компания Oracle сосредоточила усилия на повышении производительности и оптимизации
архитектуры базы данных в Windows. В Oracle7 для Windows NT были внесены изменения с целью использовать
преимущества нескольких уникальных функций платформы Windows, включая поддержку собственных потоков и
интеграцию с некоторыми административными средствами Windows, например «Системный монитор» и «Просмотр
событий».
На смену первоначальной интеграции базы данных Oracle с операционной системой Windows пришло
использование более сложных служб на платформе Windows, включая системы Itanium и AMD64/EM64T.
Компания Oracle по-прежнему продолжает создавать инновации и использовать новые технологии для Windows. В
этом руководстве подробно рассматривается архитектура Oracle Database 11g для Windows. Описываются
инновации, которые улучшают базу данных с точки зрения работы Windows, однако функции, применимые ко всем
платформам оборудования, не рассматриваются.
Oracle Database 11g имеет те же функции и функциональность в Windows, что и в Linux и UNIX. Однако за этим скрывается значительная
проделанная работа, направленная на использование преимуществ операционной системы Windows для повышения
производительности, надежности и стабильности.
Архитектура базы данных Oracle для Windows основана на потоках, а не на процессах. Потоки увеличивают скорость контекстного
переключения; существенно упрощенная процедура выделения SGA не требует совместного использования памяти; быстрее
создаются новые подключения, и уменьшено общее потребление ресурсов памяти.
АРХИТЕКТУРА БАЗЫ ДАННЫХ ORACLE ДЛЯ WINDOWS
В среде Windows Oracle Database 11g имеет те же функции и функциональность, что и на различных платформах
Linux и UNIX, поддерживаемых продуктами Oracle. Однако интерфейс между базой данных и операционной
системой существенно изменен и основан на уникальных службах Windows. В результате Oracle Database 11g для
Windows нельзя, строго говоря, считать портированным с UNIX кодом. Проделана значительная инженерная работа
с целью в максимальной степени использовать возможности Windows в базе данных и гарантировать стабильность,
надежность и высокую производительность базы данных Oracle, на основе которой создаются приложения.
Потоковая модель
В сравнении с базой данных Oracle для UNIX самым существенным архитектурным изменением в Oracle Database
11g для Windows стал переход от сервера на основе процессов к серверу на основе потоков. В UNIX база Oracle
использует процессы для выполнения фоновых задач, например для работы средства записи в базы данных (DBW0),
средства записи в журнал (LGWR), диспетчеров, совместно используемых серверов и т. д. В дополнение к этому
каждое выделенное подключение к базе данных приводит к тому, что создается другой процесс операционной
системы от имени этого сеанса. Однако в Windows все эти процессы реализованы в виде потоков внутри одного
большого процесса. Таким образом, для каждого экземпляра базы данных Oracle существует только один процесс,
выполняемый в Windows для самого сервера базы данных Oracle. (Примечание. В Windows существуют другие
процессы Oracle для других служб баз данных, например Enterprise Manager Database Console.) Внутри этого
процесса существует множество выполняемых потоков, каждый из которых соответствует конкретному процессу в
архитектуре UNIX. Так, если в UNIX для данного экземпляра выполняется 100 процессов Oracle, то аналогичная
нагрузка в Windows обрабатывается 100 потоками в одном процессе.
С точки зрения пользователя это изменение в архитектуре базы данных не влияет на клиентские приложения,
подключающиеся к базе данных. Мы приложили все усилия, чтобы сделать работу базы данных в Windows
максимально похожей на работу на других платформах, несмотря на преобразования архитектуры внутренних
процессов в архитектуру потоков.
Переход на поточную архитектуру изначально был обусловлен низкой производительностью первого выпуска
Windows NT при работе с файлами, совместно используемыми несколькими процессами. Одного преобразования в
поточную архитектуру оказалось достаточно, чтобы обойти это ограничение Windows NT и тем самым
существенно увеличить производительность, не изменяя остальной код. Несомненно, та изначальная причина уже
неактуальна, однако поточная архитектура Oracle сохранилась, поскольку она зарекомендовала себя как очень
устойчивая и предлагающая широкие возможности поддержки.
База данных Oracle выполняется как служба Windows, то есть фоновый процесс, запускаемый при загрузке Windows.
За годы работы компания Oracle последовательно улучшала свою базу данных, чтобы обслуживать все большее число пользователей.
Oracle Real Application Clusters повышает поддерживаемое число пользовательских подключений и пропускную способность за счет
объединения нескольких компьютеров в одну базу данных.
Поточная архитектура обеспечивает и другие выгоды. К ним относятся увеличенная скорость контекстного
переключения операционной системы в потоках в сравнении с процессами, значительно упрощенная процедура
выделения System Global Area (SGA), не требующая совместного использования памяти; увеличение скорости
создания новых подключений по той причине, что потоки создаются быстрее процессов; уменьшенное
потребление ресурсов памяти по той причине, что потоки совместно используют больше структур данных, чем
процессы. Другое преимущество заключается в том, что поточная модель в целом более свойственна Windows, чем
модель на основе процессов.
Код, с помощью которого реализована поточная модель, очень компактный и максимально изолирован от главного
тела кода Oracle. Менее 20 модулей создают всю инфраструктуру, на основе которой реализована поточная модель.
В дополнение к этому повышена надежность архитектуры за счет использования обработчиков исключений и
процедур, отслеживающих выделение ресурсов и отменяющих это выделение. Благодаря двум этим дополнениям
приложения базы данных Oracle для Windows способны работать круглосуточно 7 дней в неделю без простоя из-за
нерационального использования ресурсов или некорректной работы программы.
Услуги
Другая особенность Oracle Database 11g помимо поточной модели заключается в том, что это не типичный процесс
Windows. Это служба Windows, которая в целом представляет собой фоновый процесс, зарегистрированный в
операционной системе, запускаемый Windows при загрузке и выполняемый в конкретном контексте безопасности.
Преобразование базы Oracle в службу потребовалось для того, чтобы база данных запускалась автоматически при
перезагрузке системы, поскольку службы не требуют запуска пользователем. Когда служба базы данных Oracle
запускается, в процессе не выполняется ни одного типичного потока Oracle. Вместо этого процесс, как правило,
ожидает первого подключения и запроса запуска от SQL*Plus, что вызовет запуск основного потока и постепенное
создание фоновых потоков и SGA. При выключении базы данных все созданные потоки закрываются, но сам
процесс работает и ожидает следующего запроса подключения и команды запуска. Помимо создания службы базы
данных Oracle расширена поддержка с целью автоматического запуска SQL*Plus и открытия базы данных для
использования клиентами.
Oracle Net Listener также является службой, поскольку требует запуска, прежде чем пользователи могут
подключиться к базе данных. Повторимся, что все эти сведения касаются исключительно реализации и не влияют
на то, как клиенты подключаются к базе данных или используют ее иным образом, хотя они крайне важны для
администраторов баз данных Windows.
Усовершенствования масштабируемости
Одной из ключевых задач Oracle Database 11g для Windows является полноценное использование всех технологий
операционных систем и оборудования, которые могут увеличить масштабируемость, пропускную способность и
емкость баз данных.
База данных Oracle для Windows поддерживает доступ к большому количеству памяти несколькими способами, включая 4GB RAM
Tuning, Very Large Memory и Address Windowing Extensions. База Oracle может использовать максимально возможный объем памяти 64
Гб в 32-разрядной Windows, поэтому пользователи выигрывают от повышения масштабируемости и пропускной способности.
Были приложены значительные усилия, чтобы обеспечить поддержку большого числа пользователей,
подключающихся к базе данных в Windows. Еще во времена Oracle7 версии 7.2 в производственных средах
некоторых заказчиков существовало более 1000 параллельных подключений к одному экземпляру базы данных в
Windows NT. С течением времени это число увеличивалось, и теперь одновременно к одному экземпляру базы
данных на одном узле в производственных средах могут подключаться гораздо больше 2000 пользователей. При
использовании архитектуры совместного сервера Oracle, которая ограничивает число потоков, выполняемых в
процессе базы данных Oracle, к одному экземпляру базы данных могут одновременно подключиться более 10000
пользователей. В дополнение к этому функции мультиплексирования сети и пула подключений позволяют создать
более емкую конфигурацию и дополнительно увеличить число пользователей, подключающихся к одной базе
данных.
В последние годы администраторы баз данных Windows смогли дополнительно увеличить число пользователей за
счет нового 64-разрядного оборудования Itanium или AMD64/EM64T и Oracle Real Application Clusters (RAC).
Усовершенствования, связанные с 64-разрядной архитектурой, рассматриваются позднее в этом руководстве. Oracle
RAC позволяет нескольким серверам обращаться к одним и тем же файлам базы данных, увеличивая тем самым
пропускную способность, а также производительность. В качестве отдельных узлов кластера RAC можно добавить
стандартное оборудование, поэтому RAC является популярным решением для экономически эффективного
масштабирования и обеспечения высокой доступности. В Windows заказчики без труда осуществляли
масштабирование до кластера RAC с 23 узлами.
4GB RAM Tuning (4GT)
Если объединение в кластеры и 64-разрядная Windows недоступны, то необходимо оптимизировать использование
ресурсов, доступных в 32-разрядных системах Windows. 32-разрядная Windows 2000 Server (версии Advanced и
Datacenter) и 32-разрядная Windows Server 2003 (версии Enterprise и Datacenter) содержат функцию 4GB RAM
Tuning (4GT). Эта функция позволяет приложениям Windows, интенсивно использующим память, непосредственно
обращаться к 3 Гб памяти, тогда как по умолчанию разрешено использовать 2 Гб. Очевидной выгодой этого с точки
зрения базы данных Oracle является использование дополнительных 50 % для базы данных, что позволяет
увеличить размеры SGA или число подключений. Все выпуски серверов баз данных Oracle начиная с версии 7.3.4
поддерживают эту функцию, не требуя изменения стандартной установки Oracle. Единственным необходимым
изменением конфигурации является установка флага /3GB в файле boot.ini в Windows.
Very Large Memory (VLM)
В 32-разрядных приложениях Windows, интенсивно использующих память, часто используется функция настройки
памяти, поддержка которой впервые появилась в Oracle8i, — Very Large Memory (VLM). Функция VLM, доступная в
Windows 2000 и более поздних версиях, позволяет базе данных Oracle для Windows преодолеть ограничение
адресного пространства в 3 Гб, обычно налагаемое 32-разрядной Windows. Теперь один экземпляр базы данных
может использовать буфера базы данных емкостью до 64 Гб при работе на компьютере и в операционной системе,
которые поддерживают такой объем физической памяти. Эта поддержка Oracle Database 11g тесно интегрирована с
кодом кэша буферов базы данных внутри ядра базы данных, что позволяет очень эффективно использовать
большие объемы ОЗУ, доступные буферам базы данных. При наличии у базы данных большого числа буферов в
кэш помещается больше данных. Это сокращает количество операций записи/чтения диска, которые значительно
медленнее, чем извлечение данных из памяти. Использование этой функции приводит к увеличению пропускной
способности и производительности базы данных на соответствующую величину.
Поддержка Large Page повышает производительность для приложений баз данных, интенсивно использующих память, в особенности
когда размер кэша буферов составляет несколько гигабайт.
С точки зрения структуры Oracle Database 11g для Windows использует преимущества Address Windowing Extensions
(AWE), встроенных в операционные системы Windows 2000 и более поздних версий. AWE представляют собой
набор вызовов API, которые позволяют приложениям обращаться к ОЗУ объемом более традиционных 3 Гб,
обычно доступных 32-разрядным приложениям Windows. Интерфейс AWE использует преимущества архитектуры
Intel Xeon и обеспечивает быстрый интерфейс сопоставления/снятия сопоставления для всей памяти на
компьютере. Поэтому, обращаясь к памяти объемом более 4 Гб, приложения, строго говоря, обращаются не
напрямую к памяти. Если запрошенный буфер базы данных находится в области памяти свыше 4 Гб, то он должен
быть сопоставлен из этой области с памятью объемом менее 4 Гб, чтобы разрешить доступ к ней из 32-разрядной
базы данных. Эта операция медленнее, чем прямой доступ к памяти, однако она значительно быстрее чтения диска.
Вызовы AWE позволяют значительно увеличить использование буфера баз данных до 64 Гб во всех буферах. Эта
поддержка основана исключительно на изменении в памяти: изменения не коснулись самих файлов баз данных.
Large Page
Поддержка Large Page — это функция, обеспечивающая прирост производительности в экземплярах баз данных,
интенсивно использующих память, как в 32-разрядных, так и в 64-разрядных Windows Server 2003. Благодаря этой
функции базы данных Oracle могут эффективнее использовать ресурсы адресации памяти процессора. Когда
поддержка Large Page включена, процессоры в системе могут быстрее получать доступ к буферам базы данных
Oracle в памяти. База Oracle использует поддержку Large Page, доступную в Windows. Размер большой страницы
составляет 2 Мб, если включено Physical Address Extension (PAE), или 4 Мб, если PAE отключено (в 32-разрядной
Windows); 2 Мб (в Windows x64); или 16 Мб (в Windows Itanium). Большие страницы используются для SGA. Все
компоненты SGA, включая кэш буферов, совместно используемый пул, большой пул и прочие выделяются с этих
больших страниц.
Эта функция в особенности полезна, когда размер кэша буферов Oracle составляет несколько гигабайт. В
конфигурациях меньшего размера также наблюдается прирост производительности при использовании Large Page,
однако он не столь высок, если база данных обращается к большому объему памяти. Чтобы включить эту новую
функцию, в реестре Windows в разделе Oracle следует установить для переменной реестра ORA_LPENABLE
значение 1.
Администраторы баз данных могут назначать сходства и приоритеты процессоров конкретным потокам Oracle для повышения их
производительности.
База данных Oracle может автоматически обнаруживать оборудование NUMA и выполнять оптимизацию, чтобы эффективно
использовать сходства узлов NUMA.
Настройки сходства и приоритета
База данных Oracle поддерживает изменение настроек приоритета и сходства для процесса и отдельных потоков баз
данных в этом процессе при выполнении в Windows.
Изменяя значение ORACLE_PRIORITY в реестре, администратор баз данных может назначить различные
приоритеты Windows отдельным фоновым потокам, а также основным потокам в целом. Аналогичным образом
можно изменить приоритет всего процесса Oracle. В некоторых обстоятельствах это может несколько повысить
производительность. К примеру, если приложение генерирует множество записей в журнале, то можно увеличить
приоритет потока LGWR, чтобы повысить эффективность управления его нагрузкой. Аналогичным образом, если
интенсивно используется репликация, можно также увеличить приоритет для потоков, которые восстанавливают
данные в удаленные базы данных и из них.
Практически по аналогии с настройкой ORACLE_PRIORITY значение реестра ORACLE_AFFINITY позволяет
администратору баз данных назначить весь процесс Oracle или отдельные потоки в этом процессе конкретным
процессорам или группе процессоров в системе. В некоторых случаях это может повысить производительность. К
примеру, назначение DBW0 одному процессору так, чтобы он не передавался от одного процессора к другому,
может в некоторых случаях обеспечивать некоторый прирост производительности. Кроме того, если в системе
работают другие приложения, то ORACLE_AFFINITY может ограничить Oracle подмножеством доступных
процессоров, чтобы дать время для выполнения другим приложениям.
Non-Uniform Memory Access (NUMA)
Благодаря добавлению поддержки Non-Uniform Memory Access (NUMA) в Windows Server 2003 Oracle теперь
эффективнее использует высокотехнологичное оборудование NUMA, в котором один большой физический сервер
состоит из нескольких вычислительных узлов. Каждый узел компьютера NUMA обращается к своей части
физической ОЗУ с разной скоростью, поэтому база данных должна определять топологию компьютера NUMA и
соответствующим образом регулировать свои расписание, выделение памяти и внутренние операции.
При работе на компьютере NUMA база данных Oracle автоматически устанавливает для параметра
ORACLE_AFFINITY соответствующее значение по умолчанию при загрузке, чтобы максимально использовать
ресурсы компьютера. В дополнение к этому выделение памяти SGA и PGA осуществляется с учетом NUMA,
поэтому обращение к памяти с различных узлов сервера выполняется максимально эффективно. Наконец, число
потоков записи в базу данных настраивается так, чтобы на один узел приходился один поток, что также повышает
производительность.
База данных Oracle для Windows поддерживает кластерную файловую систему, упрощающую управляемость. Поддержка записи/чтения
64-разрядных файлов позволяет использовать файлы размером более 4 Гб. Поддерживаются неформатированные файлы или
неформатированные разделы диска, что дает некоторый прирост производительности в сравнении с традиционной файловой
системой.
Усовершенствования записи/чтения файлов
Другой областью, в которой была проделана большая работа над кодом базы данных Oracle, стала поддержка
кластерных файлов, больших файлов и неформатированных файлов. Кластерная файловая система Oracle является
неотъемлемой частью Oracle Database 11g, что упрощает администрирование и установку кластеров Oracle. Чтобы
гарантировать полноценное использование всех возможностей Windows, база данных поддерживает запись/чтение
64-разрядных файлов, то есть использование файлов размером более 4 Гб. В дополнение к этому поддерживаются
физические и логические неформатированные файлы данных, журналов и управления, что позволяет повысить
производительность за счет Oracle RAC и баз данных с одним экземпляром в Windows.
Кластерная файловая система
Управляемость Oracle RAC значительна улучшена за счет кластерной файловой системы Oracle (CFS — cluster file
system). Oracle CFS создана для использования именно с RAC. Исполняемые файлы Oracle RAC устанавливаются
либо в CFS, либо в неформатированных файлах. В последнем случае по меньшей мере один экземпляр базы
данных выполняется на каждом узле кластера. При наличии одного установленного экземпляра CFS Oracle база
данных существует на совместно используемом устройстве хранения, как правило, в массиве хранения. CFS
позволяет программному обеспечению Oracle обращаться ко всем узлам в кластере, но управляется оно только
одним из них. Все компьютеры CFS имеют одинаковый доступ ко всем данным и могут обрабатывать любую
транзакцию. Таким образом, RAC с CFS гарантируют полную избыточность программного обеспечения баз данных
для кластеров Windows, упрощая при этом установку и администрирование.
Запись/чтение 64-разрядных файлов
Все процедуры записи/чтения баз данных Oracle поддерживают 64-разрядные смещения файлов, поэтому в
отношении файлов данных, журналов или управления не действуют ограничения размера файлов 2 Гб или 4 Гб,
традиционные для ряда других платформ. В действительности существуют лишь ограничения, характерные для всех
портированных версий Oracle. К ним относятся: 4 миллиона блоков базы данных на один файл, максимальный
размер блока 16 Кб и 64 тысячи файлов в базе данных. Если умножить эти значения, то максимальный размер
файла для базы данных Windows составит 64 Гб, а поддерживаемый максимальный общий размер базы данных (с
блоками базы данных 16 Кб) составит 4 петабайта.
Поддержка неформатированных файлов
Как и UNIX, Windows поддерживает неформатированные файлы, то есть неформатированные разделы диска,
которые можно использовать как один большой файл. Неформатированные файлы выгодно отличаются
отсутствием служебных данных файловой системы, поскольку представляют собой неформатированные разделы. В
результате использование неформатированных файлов для файлов баз данных или журналов может обеспечить
небольшой прирост производительности. Однако недостатком неформатированных файлов является низкая
управляемость — стандартные команды Windows не поддерживают работу с неформатированными файлами и их
резервное копирование. Поэтому неформатированные файлы, как правило, используются в очень
высокотехнологичных конфигурациях или Oracle Real Application Clusters, где требуется повышенная
производительность.
Чтобы использовать неформатированный файл, базе Oracle достаточно одного имени файла, указывающего, какой
диск или раздел использовать для файла. К примеру, если файл имеет имя \\.\PhysicalDrive3, то частью базы
данных Oracle становится 3-й физический диск, являющийся физическим неформатированным файлом. При этом
файл \\.\log_file_1 является примером неформатированного файла, которому для удобства назначен псевдоним.
Псевдонимы назначают с помощью Oracle Object Link Manager (OLM). OLM имеет простой в использовании
графический интерфейс и сохраняет ссылки в кластере и при перезагрузке. При указании имен
неформатированных файлов для Oracle требуется правильно выбрать номер раздела или букву диска, поскольку
база Oracle перезапишет все содержимое указанного диска при добавлении файла в базу данных, даже если она уже
расположена на диске, отформатированном в NTFS или FAT.
С точки зрения базы Oracle неформатированные файлы ничем не отличаются от прочих файлов базы данных
Oracle. База Oracle обращается с ними аналогичным образом; можно создавать их резервные копии и
восстанавливать их с помощью Recovery Manager, как и любой другой файл.
Direct Network File System Client — нововведение в 11g
Oracle Database 11g можно настроить для доступа к серверам Network File System (NFS) Version 3 непосредственно с
помощью встроенного клиента Direct Network File System.
Этот компонент реализован как часть ядра базы данных Oracle в библиотеке Oracle Disk Manager. Системы на базе
Network Attached Storage (NAS) используют NFS для обращения к данным. В предыдущих выпусках Oracle
операционная система предоставляла драйвер файловой системы сети ядра для обращения к устройствам хранения
NAS. Эта конфигурация требовала определенных настроек, обеспечивающих эффективное и правильное
использование с Oracle. Если параметры конфигурации были указаны неправильно, то возникали следующие
проблемы:



Клиенты NFS значительно различались на разных платформах и в разных выпусках операционных систем.
Параметры конфигурации было трудно настраивать. Существует более 20 параметров NFS с тонкими
различиями на разных платформах.
Стек клиента NFS имеет общее назначение. Так, он содержит такие компоненты, как управление
атрибутами файлов, не востребованные базой Oracle.
Oracle Direct Network File System реализована на базе протокола NFS версии 3 в ядре базы данных, что повышает
управляемость и обеспечивает более предсказуемые характеристики производительности. Далее приведены главные
преимущества этой новой реализации:


Она дает полный контроль над каналами ввода и вывода серверов NFS, что обеспечивает предсказуемую
производительность, упрощение управления конфигурацией и прекрасные возможности диагностики.
Ее операции обходят ограничения яруса файловой системы сети ядра и ограничения ресурсов. Однако
ядро по-прежнему используется для модулей сетевой связи.
Следующее значительное достижение с точки зрения масштабируемости архитектур базы данных Oracle было связано с переходом на
64-разрядные платформы AMD64/EM64T и Itanium. База данных Oracle уже была портирована на другие 64-разрядные платформы,
поэтому переход на 64-разрядную Windows обеспечил устойчивую, высокопроизводительную базу данных.


Создан единый интерфейс NFS для Oracle, который в будущем может использоваться на всех хостплатформах и поддерживаемых серверах NFS.
Это дает прирост производительности за счет балансировки нагрузки нескольких подключений к серверам
NFS и широких каналов асинхронных операций ввода и вывода с улучшенным параллелизмом.
64-РАЗРЯДНЫЕ ОПЕРАЦИОННЫЕ СИСТЕМЫ WINDOWS
64-разрядные системы Windows и оборудование стали новой ступенью развития производительности и
масштабируемости баз данных Oracle. Существуют две 64-разрядных платформы Windows: платформа AMD64 и
Intel EM64T и платформа Intel Itanium. Первая платформа использует операционную систему Windows x64. Обе
платформы обеспечивают масштабируемость и производительность большую, чем их 32-разрядный аналог.
Компания Oracle целенаправленно создает продукты под эти 64-разрядные платформы. Наша компания первой
выпустила общедоступный набор для разработчика баз данных в 64-разрядной Windows на платформах Itanium и
AMD64/EM64T. Компания Oracle укрепила свое лидерство в сфере 64-разрядных систем Windows, выпустив
полноценную версию базы данных Oracle в один день с выпуском 64-разрядной Windows Server 2003 для Itanium.
Команды разработчиков компании Oracle тесно сотрудничают с компаниями Microsoft, Intel и AMD, чтобы
обеспечивать оптимальную работу базы данных на обеих 64-разрядных платформах оборудования и операционных
систем.
По аналогии с 64-разрядными базами данных Oracle на платформах UNIX 64-разрядная база данных Oracle для
Windows справляется с большим числом подключений, выделяет гораздо больше памяти и обеспечивает гораздо
большую пропускную способность в сравнении с 32-разрядной базой данных. Производительность и
масштабируемость базы Oracle значительно выигрывают от увеличенных кэшей и памяти, доступных в 64разрядных системах. Здесь нет ограничения памяти 4 Гб, традиционного для 32-разрядных систем, поэтому 64разрядная база Oracle оптимально подходит для обработки больших транзакций или приложений
интеллектуальных ресурсов предприятия. Кроме того, Oracle выигрывает от улучшения параллелизма, расписания и
пропускной способности 64-разрядных архитектур. Все эти улучшения производительности прозрачно доступны в
базе данных Oracle, то есть для их использования не требуется изменять код существующих баз данных.
Помимо ожидаемого прироста производительности, достигнутого переходом на 64-разрядные системы, одним из
главных усовершенствований производительности стала ориентированная на профиль оптимизация Oracle (PGO
— profile-guided optimization). Благодаря 64-разрядному компилятору Windows от Intel компания Oracle
оптимизировала базу данных с учетом типовых нагрузок заказчика как для Itanium, так и для AMD64/EM64T.
Моделирование рабочих нагрузок заказчика в ходе компиляции предоставляет компилятору отчет, на основании
которого затем можно проанализировать наиболее и наименее загруженные каналы кода. На основании этих
сведений компилятор может упорядочить каналы кода для повышения эффективности исполнения на 64-разрядном
оборудовании. Используя только PGO без других изменений, компания Oracle добилась прироста
производительности приблизительно на 15-25 %. Усовершенствования PGO прозрачны для существующих
приложений и не требуют изменения кода.
Перенос базы Oracle с 32-разрядной на 64-разрядную платформу предельно прост. Не требуются ни полное
воссоздание баз данных, ни полный экспорт и импорт. Достаточно скопировать текущие файлы данных в новую
систему, установить 64-разрядную версию Oracle, запустить базу данных обычным способом и выполнить несколько
сценариев SQL для обновления словаря данных.
С точки зрения архитектуры в портированной на 64-разрядную платформу версии используется зарекомендовавшая
себя поточная архитектура. В результате создание нового 64-разрядного программного обеспечения Oracle в целом
подразумевало перекомпилирование, изменение ссылок, повторное тестирование и повторный выпуск новой
версии. При переходе на 64-разрядную платформу писать новый код практически не требовалось, поскольку API
нижележащей операционной системы по сути такие же. Кроме того, база данных Oracle уже портировалась на
другие 64-разрядные операционные системы, поэтому переход на 64-разрядную платформу — это предельно
простой процесс, который в кратчайший срок обеспечит качественный, стабильный продукт.
Одной из выгод от использования AMD64/EM64T является возможность с легкостью переносить приложения с 32разрядной на 64-разрядную платформу в одной и той же системе. При наличии такого оборудования в среде
заказчиков сервер и клиент 32-разрядной базы данных Oracle могут работать в 32-разрядной Windows. Или
операционная система может работать в 64-разрядном режиме, клиент Oracle останется в 32-разрядном режиме, а
остальные приложения будут перенесены на 64-разрядную платформу. Кроме того, можно полностью перейти на
64-разрядный стек Oracle на базе Windows x64. Эти варианты упрощают переход с 32-разрядной на 64-разрядную
платформу при наличии на одном компьютере нескольких приложений. Заказчики могут переносить свои
приложения на 64-разрядную платформу пошагово.
ЗАКЛЮЧЕНИЕ
Oracle Database 11g для Windows развилась из портированного с UNIX сервера баз данных и превратилась в тесно
интегрированное собственное приложение, которое использует все преимущества служб и функций операционной
системы Windows и нижележащего оборудования. Компания Oracle продолжает улучшать производительность,
масштабируемость и возможности своего сервера баз данных Windows и в то же время создает устойчивую
платформу с высокой функциональностью для создания приложений. Компания Oracle целенаправленно создает
самую высокопроизводительную базу данных как для 32-разрядной, так и для 64-разрядной платформы Windows.
Дополнительные сведения о базе данных Oracle для Windows см. на сайтах:
Технические сведения — http://otn.oracle.com/windows
Коммерческие сведения — http://www.oracle.com/windows
Архитектура Oracle Database 11g для Windows, июль 2007 г. Автор: Дэвид Колелло. Соавторы: Алекс Ке, Рави Таммайя
Oracle Corporation World Headquarters 500 Oracle Parkway Redwood Shores, CA 94065
U.S.A.
Международные запросы: телефон +1.650.506.7000, факс +1.650.506.7200, www.oracle.com
© Oracle, 2007. Все права защищены. Этот документ предоставляется только для справки, и его содержание может быть изменено без уведомления. Мы не
гарантируем отсутствие ошибок в этом документе, не даем никаких иных гарантий и не ставим условий, выраженных в устном виде или подразумеваемых
законодательством, включая подразумеваемые гарантии и условия годности для продажи или годности для конкретной цели. Мы явным образом
отказываемся от всякой ответственности в отношении этого документа, и этот документ не создает прямых и косвенных договорных обязательств. Без
получения предварительного разрешения в письменном виде запрещается воспроизводить или передавать этот документ в любой форме или любыми
средствами, как электронными, так и механическими, вне зависимости от цели. Oracle является охраняемым товарным знаком Oracle Corporation и/или ее
филиалов. Другие товарные знаки могут быть собственностью соответствующих владельцев.
Related documents
Download