Перенос Базы Данных на WEB-сервер
Рефераты >> Программирование и компьютеры >> Перенос Базы Данных на WEB-сервер

Производительность и масштабируемость.

Microsoft SQL Server 7.0 имеет параллельную архитектуру, интенсивно использующую много поточность операционной системы для обеспечения высокой производительности и масштабируемости на многопроцессорных системах. Все управление задачами SQL Server организовано вытесняющим для повышения надежности и изолирования возможных сбоев. За счет динамического распределения нагрузки на процессоры SQL Server достигает автоматической балансировки загрузки всех ЦП компьютера. Microsoft называет это "симметричной архитектурой сервера".

Преимущества симметричной архитектуры.

Симметричная архитектура Microsoft SQL Server предоставляет следующие преимущества:

- снижает сложность системы.

SQL Server не дублирует службы операционной системы (такие как диспетчирование, распределение памяти, управление очередями), что делает архитектуру системы более эффективной и стабильной;

- повышает производительность .

SQL Server способен обеспечить высокую скорость выполнения транзакций и обладает высокой пропускной способностью на микропроцессорных системах, даже при одновременной работе сотен пользователей;

- адаптируется к росту нагрузки.

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

повышает надежность

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

Усовершенствования, связанные с параллельной обработкой данных в SQL Server 7.0 .

У SQL Server 7.0 Microsoft еще более расширила возможности параллельной обработки симметричной архитектуры сервера. За счет параллельного выполнения широкого диапазона внутренних функций СУБД с использованием множественных потоков операционной системы при работе на много процессорных системах резко возрастает производительность и масштабируемость многих операций (таких как определенные типы запросов, сканирование таблиц, создание индексов, создание/восстановление страховочных копий, проверка целостности базы данных и т.д.).

Параллельное сканирование и асинхронное опережающее чтение.

Параллельное сканирование и асинхронное опережающее чтение повышает на 40 - 400% скорость выполнения некоторых типов запросов и других операций над базой данных в многопроцессорных системах. Повышение производительности достигается за счет использования SQL Server 7.0 множественных потоков операционной системы и алгоритмов определения следующего блока данных, необходимых для вывода в кэш. Эта операция типична для длительного запроса с вычислениями или операции создания отчета. Подобная технология обеспечивает резкое повышение производительности для любой операции, требующей просмотра таблиц, например, SELECT, UPDATE и DELETE с необходимостью поиска, CREATE INDEX, DBCC, DUMP/LOAD и т.п.

Параллельная загрузка.

При работе с новой версией SQL Server можно запускать несколько параллельно работающих копий BCP или SQL Enterprise Manager и выполнять параллельные перекрывающиеся операции загрузки данных в SQL Server. Подобные возможности оказываются особенно полезными при необходимости массивного копирования данных в ограниченные сроки.

И конечно же безопасность:

- Улучшенная интеграция с безопасностью NT ;

- Аутентификация средствами NT (как текущий пользователь - без пароля, как другой - login+pwd) ;

- Mixed (возможна аутентификация средствами SQL Srv) ;

- Полная поддержка пользователей, групп и ролей ;

- Роли могут быть приписаны пользователям и группам NT, а также пользователям Sphinx ;

- Роли могут быть вложены ;

- Прикладные роли для 3-уровневых систем ;

- Позволяют назначать права при доступе через приложение, а не isql ;

- Гибкая гранулярность прав и системных ролей ;

- Предопределенные роли ServerAdmin, SecurityOfficer, . ;

- Поддержка делегирования в NT 4.0 ;

- На 2-м сервере не как удаленный пользователь, а под тем же именем ;

- Простое и мощное администрирование.

Потому было принято решение установить сервером базы данных – Microsoft SQL Server 7.0.

3.2 Выбор методов доступа к базе данных.

Далее необходимо сравнить способы реализации доступа к базе данных. Схематически можно представить взаимодействие базы данных и WEB-сервера так:

3.2.1 CGI – Common Gateway Interface.

Первым способом стали приложения Common Gateway Interface (CGI), поскольку спецификация CGI позволяет браузеру вызвать тот или иной исполняемый модуль или скрипт на Web-сервере, который мог обратиться с запросом к базе данных, построить в HTML-кодах страницу результатов и передать ее обратно Web-серверу, который же, в свою очередь, отсылал результаты браузеру. CGI-приложения могут содержать вызовы других программных (написанных, например, на С++) или командных (.bat, .cmd) файлов. С помощью CGI-cкриптов, а точнее на языке PERL (Practical Extraction and Reporting Language), построено немало интерактивных Web-приложений. К сожалению, каждый такой скрипт исполняется как иной, нежели Web-сервер, процесс, что быстро "съедает" ресурсы даже достаточно "навороченной" по сегодняшним меркам машины, особенно при большом количестве заходов на сервер.

3.2.2 PHP - Personal Home Page Tools.

Модуль PHP начал жизнь как простая небольшая CGI оболочка, написанная на Perl. Чтобы избавиться от значительных непроизводительных затрат из-за необходимости запуска Perl при каждом обращении к серверу в стандартном обращении CGI. Первоначально использовался для маленьких Internet-страниц. Позднее был встроен инструмент для включения SQL в WEB-страницы. Это была CGI-оболочка, которая анализирует запросы SQL и облегчает создание форм и таблиц, основанных на этих запросах.

PHP/FI версии 2.0 - полная перезапись из этих двух пакетов, объединенных в одиночную программу. Это теперь развилось по сути в простой язык программирования, внедренный внутрь HTML файлов. PHP/FI сегодня используется больше для создания целых WEB серверов, чем для малых домашних страниц. Модуль устраняет потребность в многочисленных малых cgi программах на Perl, позволяя поместить простые скрипт-программы непосредственно в ваши HTML файлы. Пакет также упрощает управление большими WEB серверами, помещая все компоненты WEB страницы в одиночном файле HTML. Встроенная поддержка различных баз данных делает тривиальной разработку WEB страниц с доступом к базам данных. Многие находят, что иметь дело с внедренным в html-документы языком намного проще, чем создавать отдельные HTML и CGI файлы.

3.2.3 ISAPI – приложения.

3.2.3.1 dBWeb.

Помимо исполнения CGI-скриптов, Microsoft Internet Information Server (MS IIS) предоставляет разработчикам возможность создания с помощью соответствующего API (ISAPI) приложений в виде dll, запуск которых происходит в ответ на команду или выбор линка на Web-странице. Каждое такое приложение выполняется в адресном пространстве Web-сервера, что, естественно, повышает скорость работы и существенно экономит машинные ресурсы. В зависимости от сложности сайта и приложений, dll могут быть предзагружены одновременно с запуском сервера, либо подгружаться/выгружаться из памяти по мере необходимости. К наиболее известным средствам разработки приложений на основе ISAPI относятся входящий в состав MS IIS Internet Database Connector (IDC), а также свободно распространяемый dbWeb.


Страница: