Планирование базы данных Oracle: критерии и требования

Как и при установке ПО Oracle, следует потратить некоторое время на то, чтобы понять назначение базы данных, прежде чем создавать ее. Изучите задачи, для решения которых предназначена база данных, и сколько данных в ней предположительно будет храниться. Очень важно учесть все критерии и требования к будущей базе данных при ее планировании.

Следует знать свое оборудование - количество и типы процессоров, объем оперативной памяти, количество дисков, контроллеров дисков и так далее. Поскольку база данных хранится на дисках, многих проблем можно избежать, если правильно спланировать емкость и другие характеристики подсистемы ввода/вывода.

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

 

Сколько пользователей будут работать с базой данных?

Сколько пользователей могут одновременно соединяться с базой? Сколько из них будут одновременно выполнять транзакции или предъявлять запросы?

 

Должна ли база данных поддерживать OLTP-приложения (оперативную обработку транзакций) или хранилище данных?

От ответа на этот вопрос зависят характер и интенсивность работы сервера базы данных. Например, в системах оперативной обработки транзакций обычно бывает довольно много пользователей, выполняющих небольшие транзакции, а для хранилищ данных характерно небольшое количество пользователей, предъявляющих сложные запросы.

 

Каковы ожидаемые количество и размеры объектов в базе данных?

Сколько места выделять для этих объектов изначально и каков ожидаемый темп прироста?

 

Каковы характеристики доступа к различным объектам базы данных?

Некоторые объекты используются чаще других. Понимание количества и типов различных операций критически важно для планирования и оптимизации базы данных. Иногда составляют так называемую CRUD-матрицу, содержащую индикаторы создания, чтения, обновления и удаления (Create, Read, Update, Delete), или даже оценивают, сколько операций будет выполняться для каждого из основных объектов, участвующих в бизнес-транзакциях. Это может быть оценка количества операций в минуту, в час, в день или в иной период времени, характерный для конкретной системы. Например, CRUD-матрица для простой транзакции обновления данных о работнике может выглядеть, как показано в табл. 1, где плюсом помечены операции, применяемые к тем или иным объектам в каждой транзакции.

Таблица 1. Характеристики доступа к объектам базы, данных

Объект

Создание

Чтение

Обновление

Удаление

ЕМР

 

 

 

 

DEPT

 

 

 

 

SALARY

 

 

 

 

 

Сколько оборудования имеется сейчас и сколько можно будет добавить по мере роста базы данных?

Дисковые накопители постоянно дешевеют. Предположим, вы планируете базу данных с начальным объемом 100 Гбайт, которая в ближайшие два года может вырасти до 300 Гбайт. Возможно, уже сейчас имеется дисковое пространство для всех ожидаемых 300 Гбайт, однако более вероятно, что сначала закупается меньший объем, а новые диски добавляются позже. Важно спланировать начальное размещение базы, держа в уме ожидаемый рост.

До версии Oracle9i, если в процессе выполнения пакетной операции в табличном пространстве заканчивалось место, приходилось откатывать всю операцию. В Oracle 9i появилось возможность возобновления функционирования после появления необходимого пространства (resumable space allocation). Если для выполнения операции не хватило места на диске и в данном сеансе включен режим возобновления, то выполнение приостанавливается на заданное время, что позволяет оператору устранить проблему. Можно даже создать триггер AFTER SUSPEND, который сработает, если операция была приостановлена.

Подсистема Automatic Storage Management (ASM), появившаяся в версии Oracle Database 10g, позволяет добавлять новые диски или извлекать имеющиеся, не пресекая доступ к базе данных. Это не устраняет необходимость тщательно оценивать требования к объему дисковой памяти, но плата за неправильное решение, выраженная в простоях, с ASM заметно уменьшилась.

 

Каковы требования к доступности?

Какие элементы необходимо предусмотреть для гарантии требуемой доступности (например, дополнительные дисковые накопители)? ASM поддерживает также автоматическое зеркалирован, помогающее повысить живучесть данных.

 

Каковы требования к производительности?

Каково время реакции, ожидаемое пользователями, и какое вы сможете обеспечить? Что является показателем производительности - время реакции (среднее, максимальное или в период пиковой нагрузки), общая пропускная способность или средняя нагрузка?

 

Каковы требования к безопасности?

Кто должен обеспечивать безопасность: приложение, операционная система или СУБД Oracle (или какая-то их комбинация)?

Вас заинтересует / Intresting for you:

Oracle изменения изменений!
Oracle изменения изменений! 2268 просмотров Stas Belkov Tue, 21 Nov 2017, 13:18:46
Oracle Personal Edition
Oracle Personal Edition 5200 просмотров Надин Tue, 21 Nov 2017, 13:32:12
Разница между базой данных и э...
Разница между базой данных и э... 2144 просмотров Александров Попков Tue, 21 Nov 2017, 13:18:46
Основные функций СУБД Oracle (...
Основные функций СУБД Oracle (... 2880 просмотров Stas Belkov Tue, 21 Nov 2017, 13:19:55
Войдите чтобы комментировать

OraCool аватар
OraCool ответил в теме #8782 23 окт 2017 13:15
Качественно спланировать базу данных для будущего приложения - это краеугольный камень всего процесса программирования (там, где хранение и обработка данных важный элемент с большой рабочей нагрузкой). Поэтому старайтесь как сформулировать как можно больше критериев и требований к будущей базе данных Oracle. Тщательный опрос клиентов (будущих пользователей системы), оценка будущей рабочей нагрузки и планирование перспектив развития программного комплекса. Все это и много другое должно быть учтено!