Информационная система в целом

Многие представляют себе процесс планирования конфигурации как выбор конфигурации отдельного сервера. Однако рост баз данных приводит к появлению в составе конкретной информационной системы ряда вспомогательных серверов, и тогда потребуется определить общую конфигурацию всей системы. Система баз данных современной компании больше не может ограничиться одним сервером, работающим на одной серверной машине. В нее должны входить перечисленные ниже серверы.

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

Основной OLTP-сервер

Основой поддержки повседневной деятельности вашей компании является сервер оперативной обработки транзакций (On-Line Transaction Processing, OLTP). Его пропускная способность должна быть расчитана на одновременное выполнение всех функций, но в первую очередь его следует оптимизировать для обработки множества небольших транзакций, сократив до минимума количество индексов каждой таблицы и т.д.

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

Резервный сервер

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

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

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

Сервер поддержки принятия решений (подготовки отчетов)

Удовлетворительная производительность основного OLTP-сервера зависит от переноса всех громоздких или нестандартных запросов на отдельный сервер подготовки отчетов или, в более широком смысле, сервер поддержки принятия решений (Decision Support Server, DSS). Базы данных DSS-сервера должны быть синхронизированы с базами данных основного OLTP-сервера, например, путем регулярной загрузки дампов баз данных с основного сервера. Подобный способ синхронизации подойдет, если неизбежное отставание DSS-сервера от основного сервера окажется приемлемым для пользователей.

При ежедневном сохранении дампов баз данных основного сервера отставание DSS-сервера составит около одного дня (поскольку в промежуток времени между дампами данные вторичного сервера не будут обновляться). Также можно перенести на вторичный сервер дампы журналов транзакций баз данных основного сервера с их немедленной загрузкой. Тогда время отставания DSS сервера от OLTP сервера удастся сократить до интервала между сохранением дампов журналов транзакций.

Отметим, что оба способа требуют значительного дискового пространства как на основном, так и вторичном серверах. Такими же методами можно осуществить и синхронизацию резервного сервера, размер дискового пространства которого при этом должен совпадать с дисковым полем как основного, так и DSS серверов.

Сервер разработки приложений

Главный OLTP ервер информационной системы ни в коем случае не следует использовать для разработки приложений или их тестирования. Подобная деятельность требует отдельного сервера, способного вместить копии баз данных основного сервера. Разумеется, на сервере разработки приложений нет необходимости обеспечивать зеркальное резервирование этих баз данных, а также хранение их дампов и дампов журналов транзакций.

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

Кроме того, дисковое поле сервера разработки приложений должно быть достаточным для размещения и создания больших файлов данных, необходимых при обмене данными с другими серверами. Также нужны логические дампы баз данных, которые крайне полезны в процессе разработки приложений из”за частой смены структуры баз данных и их отдельных объектов.

Тестовый сервер

В зависимости от сложности создаваемых приложений и индивидуальных особенностей конкретной информационной системы, может понадобится отдельный сервер для тестирования новых приложений. Его возможности должны быть сопоставимы с возможностями сервера разработки приложений, поскольку на тестовом сервере также потребуется размещать копии баз данных основного сервера. Такой сервер позволит тестировать приложения, не создавая помех разработчикам других приложений.

DBCC-сервер

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

Ваша компания не имеет права закрыть доступ пользователей к основному серверу на столь длительный промежуток времени. В результате придется создать еще один сервер, специально предназначенный для выполнения проверок баз данных. В число операций, осуществляемых на DBCC сервере, входит загрузка старых дампов, выполнение dbcc-роверок, а также эксперименты с ускорением сохранения логических дампов, одновременной записью дампа на несколько дисков и т.д.

Сервер прежней версии

Постоянное обновление версий серверов вашей информационной системы приведет к тому, что в вашем распоряжении не останется ни одной работоспособной копии прежней версии сервера. Это затруднит загрузку старых дампов баз данных, созданных еще до начала перехода на новые версии.

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

Ее можно попробовать установить на одной машине с DBCC-сервером. Однако дисковое пространство такого сервера должно обеспечивать возможность загрузки самой большой базы данных, данные из которой могут внезапно потребоваться.

Сервер тиражирования

Сервер тиражирования (Replication Server) должен работать на отдельной серверной машине. Безусловно, этот программный продукт Sybase можно установить на любую из имеющихся серверных машин, но это отрицательно отразится на производительности SQL-сервера, работающего на той же самой машине. Кроме того, перенос основных компонентов системы тиражирования на выделенный компьютер значительно облегчит ее сопровождение.

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

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

Они называются стабильными очередями запросов (stable queues) и способны накапливать все необходимые транзакции в течение допустимого срока отключения одного из узлов вашей информационной системы. Естественно, увеличение максимально допустимого срока недоступности одного из узлов системы тиражирования потребует дополнительного дискового пространства на сервере тиражирования.

Поддержка работоспособности информационной системы

Определив состав и общую конфигурацию серверов вашей информационной системы, не забудьте об адекватной поддержке их нормальной работы. Эта сторона дела очень важна и к ней следует отнестись серьезно. Даже если вы до бесконечности будете разукрупнять вычислительные ресурсы и перейдете на архитектуру клиент-сервер, вам все равно потребуются услуги персонала и сторонних организаций.

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

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

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

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100