Помощь в учёбе, очень быстро...
Работаем вместе до победы

Получение данных о табличных пространствах

РефератПомощь в написанииУзнать стоимостьмоей работы

Как правило, для обеспечения максимальной производительности табличные пространства создаются на отдельных физических устройствах. Зная структуру табличных пространств в базе данных и их назначение, можно сконструировать базу данных, обладающую максимальной производительностью. Теоретически, если запрос может обращаться к нескольким физическим дискам одновременно, то он будет более эффективным… Читать ещё >

Получение данных о табличных пространствах (реферат, курсовая, диплом, контрольная)

Как правило, для обеспечения максимальной производительности табличные пространства создаются на отдельных физических устройствах. Зная структуру табличных пространств в базе данных и их назначение, можно сконструировать базу данных, обладающую максимальной производительностью. Теоретически, если запрос может обращаться к нескольким физическим дискам одновременно, то он будет более эффективным, чем при использовании только одного устройства. Для получения информации о доступных табличных пространствах и их параметрах памяти, заданных по умолчанию, выдайте следующий запрос (синтаксис запросов SQL будет рассмотрен позже в этой книге): select tablespace_name, initial_extent INITIAL, next_extent NEXT, min_extents MIN, max_extents MAX, pctincrease PCT, status from user tablespaces;

В результате этого запроса будет получен отчет, аналогичный показанному в листинге 12.1.

Листинг 12.1. Список имеющихся табличных пространств.

TBLESPACE_

NAME

INITIAL

NEXT

MIN

MAX

PCT

STATUS

SYSTEM

ONLINE

ROLLSPACE

ONLINE

USER TOOLS

ONLINE

USER_TABS

ONLINE

USER_NDX

ONLINE

USER_REFER

ENCE

READ

ONLY

USER OTHER

OFFLINE

Как показывает листинг 12.1, в базе данных имеется семь доступных табличных пространств. Любые объекты, добавляемые к базе данных, будут использовать заданные по умолчанию параметры памяти, показанные в этом отчете. Обратите также внимание, что в соответствии с содержимым столбца STATUS состояние табличного пространства может принимать значения ONLINE, OFFLINE или read only. Новые объекты и данные могут быть записаны только в табличное пространство online, а в табличном пространстве read only запись не может быть выполнена, пока его состояние не изменится на ONLINE.

Чтобы можно было распределять пространство памяти для объектов базы данных, в указанном табличном пространстве должно существовать сплошное свободное пространство. Для определения количества свободного места, доступного для табличного пространства, выдайте следующий запрос: select tablespace_name, filejd, block_id, bytes, blocks from user_free_space where tablespace name = 'USER TABS' order by filejd, blockjd;

Как показано в листинге 12.2, этот запрос возвращает три сегмента доступного пространства (соответственно 50, 80 и 175 блоков) в табличном пространстве lser_tabs.

Листинг 12.2.Имеющееся свободное пространство.

TABLESPACE JVAME

FILEJD

IBLOCKJD

BYTES. BLOCKS

USER_TABS

USER_TABS

USERJTABS

По мере добавления экстентов к базе данных, RDBMS будет вначале пытаться разместить экстент внутри одного существующего свободного сегмента. Если такой сегмент не будет найден, RDBMS попробует найти для экстента непрерывный участок среди нескольких свободных сегментов. И наконец, если непрерывного участка не существует, будет расширен файл данных, как определено опцией ALTOEXTEND для табличного пространства. Если параметр autoextend не задан, расширение закончится неудачей и будет выдано сообщение об ошибке.

Используя предыдущий пример, предположим, что нужно создать объект с начальным размером 100 блоков данных. Сегмент со 100 блоками существует, и объект будет помещен в BLOCK_ID 51 026. Если требуется второй объект со 100 блоками, будут слиты сегменты с 80 блоками и с 50 блоками, и новый объект будет сохранен в позиции 178, оставляя сегменты свободного пространства в BLOCKJD 278 (30 блоков) и BLOCKJD 51 126 (75 блоков). Если потребуется третий экстент со 100 блоками, файл данных по возможности будет расширен. Как можно видеть, при создании и удалении объектов из базы данных необходимо действовать очень осторожно.

Показать весь текст
Заполнить форму текущей работой