Корпоративные базы данных - статьи

Улучшение работы с очень большими БД



В этой области все улучшения можно разбить на три группы: ускоренная подготовка БД к работе;
улучшение управления пространством в БД, повышение производительности при работе с
большой БД.

До сих пор для повышения надежности работы прикладной системы на базе Oracle использовались
два варианта: кластерная архитектура (Oracle Parallel Server) и репликация. В версии Oracle 7.3
добавляется новая возможность - STAND BY (резервная) база. Это очень удобно,
например, на случай возможности взрыва центрального офиса с основной БД. Stand by база
создается на другом компьютере (возможно в другом районе) и является копией основной базы.
Она находится в режиме постоянного восстановления и не доступна для работы. Восстановление
резервной базы ведется автоматически на основе передаваемых ей от основной базы журнальных
файлов. В случае уничтожения основной базы, резервная очень быстро переводится в рабочий
режим и становится основной. В последующее время на месте старой основной БД можно


организовать новую резервную БД. Основная и резервная БД должны работать на одинаковых
компьютерах, одинаковых версиях операционной системы и Oracle.

До сих пор в случае сбоя БД Oracle выполнял ее восстановление в два этапа: rollout - откат вперед
с восстановлением всех потерянных при сбое изменений и rollback - откат назад транзакций, не
законченных к моменту сбоя. До окончания этих двух последовательных этапов БД была
недоступна для работы. Процесс открытия большой БД после сбоя мог затянуться надолго.
Поэтому в Oracle 7.3 Вы можете выполнить быстрое восстановление и получить доступ к
БД после первого этапа, а rollback будет выполняться позднее в фоновом режиме. Это снизит
время простоя БД.

Новая утилита DB_VERIFY позволит Вам выполнить контроль целостности БД, ее блоков,
backup копий БД. В версии Oracle 7.3 значительно улучшено управление пространством в БД.
Объекты БД ( таблицы, индексы, сегменты отката и т.д. ) могут состоять из частей (экстентов),
разбросанных по tablespace.
Их число было ограничено. Сейчас это ограничение снято и очень
большие объекты БД могут занимать неограниченное число экстентов. Кроме того, если в
результате модификации данных область, занимаемая таблицей, индексом и т.д. заполнена лишь
частично, то можно освободить неиспользованное пространство, передав его в общий пул
свободного пространства tablespace (команда ALTER TABLE ... DEALLOCATE UNUSED).
Это позволит разместить в БД больше объектов. Если в БД образуется несколько смежных
участков свободного пространства, то процесс SMON умеет склеивать их в единый кусок. Однако
теперь это может сделать и администратор БД с помощью команды ALTER TABLESPACE ...
COALESCE.

Ну и наконец для больших БД логический экспорт БД и ее больших объектов всегда занимал
много времени. Утилита экспорта EXP работала с БД как обычное приложение, использующее
команды языка SQL и стандартный вариант их обработки. Новый (прямой) режим
экспорта работает в несколько раз быстрее, поскольку он "обходит" многие фазы стандартной
обработки SQL и выбирает данные из БД в обход Oracle Server.


Содержание раздела