div.main {margin-left: 20pt; margin-right: 20pt}Oracle 8i – база данных для Интернета
Эта статья посвящена новому продукту фирмы Oracle – системе
управления базами данных (СУБД) Oracle 8i, вышедшей в марте
этого года и вызвавшей большой интерес среди специалистов в
области СУБД и информационных технологий. Хотя значительная
часть профессионалов уже успела по достоинству оценить
преимущества и перспективы этой СУБД, ее присутствие на
российском рынке еще нельзя назвать массовым. Ниже приводится
обзор возможностей и технических характеристик этого
замечательного программного продукта.
Повышение производительности системы Задачи, связанные с
обработкой большого количества транзакций в реальном времени
или с доступом к большим хранилищам данных, неизменно приводят
к высокой конкуренции пользователей за обладание ресурсами.
Поэтому решение проблемы управления доступом пользователей к
ресурсам может существенно повысить эффективность работы
системы. Oracle 8i предоставляет возможности управления
выделением пользователю системных ресурсов и назначением
приоритета пользователям – им может быть присвоен класс
ресурсов, а затем каждому классу назначен соответствующий
процент ресурсов системы.
В Oracle 8i была введена технология секционирования
(partitioning), которая позволяет загружать большие таблицы и
индексы по частям, а не как единое целое, и дает существенный
выигрыш в производительности СУБД. Причина выигрыша
заключается в том, что при выполнении запроса к базе данных
оптимизатор исключает из области поиска разделы, которые не
содержат данных, относящихся к запросу. Наряду с ранговым
секционированием, использовавшимся ранее, в Oracle 8i
представлены два других механизма секционирования –
композитное и хэш-секционирование, что дает возможность
администратору выбрать метод секционирования с целью повышения
эффективности работы конкретной системы. Хэш-секционирование
предоставляет простой способ разделения данных на контейнеры
одинакового размера, которые распределяются по разным
устройствам ввода/вывода и даже по разным машинам.
Производительность запроса в этом случае повышается за счет
распределения операций ввода/вывода по разным устройствам. При
этом улучшается производительность как обычных, так и
параллельных запросов. Композитное секционирование объединяет
преимущества рангового и хэш-секционирования – первоначально
данные секционируются по рангу значения, а затем администратор
определяет количество хэш-подразделов. При этом гарантируется
полная поддержка локальных индексов и синтаксиса SQL, как при
работе с обычными (несекционированными) таблицами.
В Oracle 8i включены и другие усовершенствования,
улучшающие производительность приложений, работающих с
хранилищами данных, и упрощающие управление ими. В частности,
перестройку индексов можно теперь выполнять в режиме реального
времени, не прерывая операций, связанных со вставкой,
изменением и удалением записей, производимых в базовой
таблице.Теперь можно создавать индексы, упорядоченные по
убыванию значений индексируемой величины, что помогает
обеспечить быстрый доступ в тех случаях, когда возвращаемые
столбцы должны быть отсортированы по убыванию. Улучшены
возможности мониторинга за выполнением длительных процессов,
таких как формирование индексов или резервное
копирование.
Параллельный сервер Oracle Параллельный
сервер Oracle позволяет разделить доступ к базе данных между
разными серверными процессами (Oracle instance), причем каждый
из процессов может обрабатывать конкурирующие транзакции.
Различные серверные процессы, работающие с одной и той же
базой данных, могут быть запущены на разных машинах, формируя
тем самым отдельный кластер. Это резко повышает надежность
работы системы, поскольку параллельный сервер Oracle в
состоянии отловить аварийную ситуацию, произошедшую с одной из
машин кластера, практически мгновенно, после чего база данных
продолжает оставаться доступной через серверный процесс,
запущенный на другой машине.
В версии Oracle 8i внесен ряд усовершенствований,
улучшающий работу параллельного сервера в плане повышения
производительности и управляемости. Появился специальный
мастер настройки параллельного сервера, улучшена диагностика
ошибок, ведется статистика распределения кэш-памяти между
серверными процессами, введен новый механизм связи между
серверными процессами, повысивший производительность операций
чтения. При этом данный механизм, получивший наименование
Сервер согласованного чтения, обеспечивает работу существующих
приложений, реализованных в среде параллельного сервера
Oracle, без какой-либо модификации.
Репликация
данных Репликация – это процесс копирования и поддержания
объектов БД на множестве серверов, составляющих распределенную
информационную систему. Изменения, производимые на одном
сервере системы, затем передаются на удаленные серверы.
Репликации позволяют пользователю получить быстрый доступ к
разделяемой информации и организовать синхронизацию данных.
Репликации в среде Oracle могут происходить по двум схемам:
мастер-мастер и мастер-snapshot.
В первом случае два или несколько серверов БД функционируют
как равные части единой системы. При такой конфигурации
клиентские приложения могут изменять данные на любом из
серверов – серверы БД Oracle автоматически синхронизируют
данные во всех объектах репликаций, гарантируя при этом
глобальную целостность данных и поддержку конкурирующих
транзакций.
Схема мастер-snapshot предусматривает частичное или полное
копирование объектов репликации с одного сервера БД на другой.
При этом полученная копия представляет собой “мгновенный
снимок” (snapshot) данных, содержащихся в объектах БД,
подлежащих реплицированию. Такие “мгновенные снимки” могут
иметь статус “только для чтения” или быть обновляемыми.
Обновляемые snapshots позволяют клиенту возвращать изменения в
реплицируемые объекты на мастер-сервере.
В целях повышения производительности системы при
осуществлении процессов репликации данных, разработчики Oracle
стремятся перенести код, ответственный за репликации, в ядро
СУБД. В версии 8.0.3 внутрь ядра были перенесены триггеры,
использовавшиеся при репликациях, в Oracle 8i версии 8.1.5
сюда же переносятся сгенерированные пакеты (packages),
используемые для применения этих реплицированных транзакций на
удаленных узлах. За счет этого, а также за счет оптимизации
процессов пересылки информации, увеличена производительность
обновления snapshots.
Многие характеристики Oracle 8i разрабатываются для того,
чтобы помочь пользователям, реализующим приложения “переднего
плана”, офисной автоматизации и автоматизации деятельности
мобильных средств связи. Шаблоны группы обновления snapshots,
а также дополнительные возможности проверки Менеджера
Репликации Oracle (Oracle Replication Manager) позволяют
администраторам централизованно определять сотни удаленных
узлов, в которых создаются snapshots, и управлять ими. Шаблоны
группы обновления snapshots позволяют создавать определения
удаленных snapshots на центральном узле системы. Так как все
эти новые возможности Oracle 8i Advanced Replication
поддерживаются также и Oracle Lite, организации могут
развертывать свои приложения на легких, мобильных базах
данных, не жертвуя никакими функциональными возможностями.
Технические требования Как и ранее, новая версия
популярной СУБД выпущена в четырех модификациях: Oracle 8i
Enterprise Edition – полнофункциональная версия продукта,
Oracle 8i Standart Edition – сервер БД для рабочей
группы, Oracle 8i Personal Edition – однопользовательский
вариант сервера, рассчитанный, главным образом, на
разработчиков программного обеспечения, и Oracle 8i Lite –
база данных клиента для персональных цифровых помощников (PDA)
и карманных PC. Как отмечалось выше, Oracle Enterprise Manager
поставляется теперь в виде отдельного продукта. Различия
между Enterprise и стандартной версиями Oracle 8i касается,
главным образом, возможностей создания на базе этих продуктов
крупных корпоративных информационных систем, что находит свое
отражение в стоимости каждого из них. В стандартной версии
отсутствует ряд важных свойств, включая, в частности,
организацию параллельного сервера Oracle и некоторых
возможностей репликации данных.
Personal Oracle 8i представляет собой однопользовательскую
версию СУБД, предназначенную для установки на персональный
компьютер и имеющую полную совместимость с промышленными
версиями Oracle 8i. Это гарантирует разработчику возможность
перенесения приложений на промышленные серверы без каких-либо
изменений в коде. Personal Oracle 8i предоставляет возможности
расширенной репликации, распределенной работы с другими
серверами Oracle, поддержку объектов в базе данных, работу с
нереляционными типами данных через InterMedia и возможность
разработки приложений и хранимых процедур на Java.
Oracle 8i Lite разработана специально для переносных и
карманных компьютеров и позволяет их владельцам легко
синхронизировать свои локальные данные с их корпоративными
системами. Она представляет собой однопользовательскую
объектно-реляционную базу, требующую ничтожное количество
системных ресурсов (от 250 до 750 Кб оперативной памяти) и
может работать даже на устройствах типа PalmPilot. Доступ к
данным Oracle 8i Lite поддерживается посредством стандартных
интерфейсов (ODBC, OCI (интерфейс вызовов Oracle), JDBC), что
позволяет создавать приложения с помощью обычных средств
разработки.
Новые возможности, предлагаемые сервером Oracle 8i, конечно
же, привели и к существенному повышению требований,
предъявляемых к аппаратному обеспечению. Если предыдущие
версии Oracle Enterprise Edition требовали, как минимум,
процессор Pentium 90 и 32 Mb оперативной памяти, то теперь
требования к объему памяти возросли до 96 Mb (рекомендуется
128 Mb), а частота процессора должна быть не ниже 166 MHz
(правда, опыт показал, что Oracle 8i Enterprise Edition для
Windows NT можно установить на машине с процессором Pentium
120 и 64 Mb оперативной памяти при условии расширения размера
виртуальной памяти до 250 Mb). Полная версия Oracle 8i требует
примерно 600 Mb на жестком диске (без учета документации). Как
обычно, корпорация Oracle предлагает этот продукт под самые
разнообразные платформы, при этом версии под наиболее
популярные операционные системы – Windows NT и Linux – имеются
в открытом доступе и могут быть получены через
Интернет.
Доступнее, чем когда-либо Корпорация
Oracle делает все для того, чтобы сделать свои продукты
доступными для разработчиков. В поисках очередной версии вам
не надо больше бегать по рынкам с пиратской продукцией или
просить знакомых отважиться на незаконное копирование
лицензионных продуктов.
Достаточно зарегистрироваться на сервере http://technet.oracle.com/
и получить оттуда бесплатно по всемирной сети копию нужного
вам продукта для некоммерческого использования. Здесь вы
можете найти Oracle 8i Enterprise Edition для Windows NT,
Oracle 8i Workgroup Server для Linux, Oracle 8i Lite, Oracle
Enterprise Manager и многие другие новейшие разработки Oracle
Corporation. Хотя аналогичных продуктов под другие платформы
(в частности, Sun Solaris) не имеется в открытом доступе,
имеющиеся возможности позволяют специалистам своевременно
ознакомиться с новинками Oracle, получить необходимые навыки и
более оперативно принять квалифицированное решение о покупке и
внедрении тех или иных продуктов.
Такая практика дает возможность компании Oracle не только
расширить потенциальный рынок сбыта своей продукции и
увеличить ее популярность среди разработчиков программного
обеспечения, но и получать необходимую информацию о динамике
спроса на свои новейшие разработки. С момента выхода Oracle 8i
руководство компании объявило об огромном росте запросов на
эту СУБД, причем особо отмечался рост спроса на СУБД Oracle на
платформе Linux.
Георгий Шахов
|