Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / Microsoft SQL Server 2005 для администраторов
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

11.5.4. Оптимизация подключений к SQL Server 2005

Клиентские подключения к SQL Server 2005: оптимизация, OLE DB, ODBC, BDE, замена ODBC на OLE DB при помощи файла UDL, SQL Native Client, пул подключений (connection pooling)

Первый уровень оптимизации приложений с использованием SQL Server 2005 — это оптимизация подключений к серверу. Подключаться к SQL Server можно разными способами. Чаще всего используются три варианта:

q      подключение по OLE DB — наиболее рекомендуемый и современный вариант. Если клиентская часть реализована под Windows (что бывает в большинстве случаев), использование подключений по OLE DB — это и самый быстрый способ;

q      подключение по ODBC — унаследованный, но до настоящего времени очень популярный способ;

q      подключение с использованием BDE (Borland Database Engine) — обычно используется в приложениях, написанных на языке Delphi.

Быстрее всего работают подключения по OLE DB. Причина проста: при подключениях такого типа полностью используются возможности COM-технологий. Кроме того, по сравнению с ODBC и BDE приходится производить меньшее количество преобразований. Выигрыш в скорости особенно заметен в тех случаях, когда с сервера на клиентский компьютер передается большое количество информации (например, при создании больших отчетов).

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

Предположим, что у вас есть системный источник данных ODBC, который называется SQL1, настроенный на подключение к базе данных SQL Server 2005. Именно этот источник данных ODBC используется клиентским приложением. Переключить его на использование OLE DB можно следующим образом.

Первое, что нужно сделать, — создать на диске файл подключения по OLE DB (файл UDL User Data Link). Сгенерировать его в автоматическом режиме можно так:

q      создать на диске любой пустой файл (для этого, например, можно щелкнуть правой кнопкой мыши по пустому пространству в папке в Проводнике Windows и в контекстном меню выбрать Создать | Текстовый документ);

q      изменить у этого файла расширение на udl. Естественно, при этом должен быть включен показ расширений для известных типов файлов. Включить его можно на вкладке Вид в окне Свойства папки (меню Сервис в Проводнике);

q      обратите внимание, что после изменения расширения имени файла значок для данного файла в Проводнике изменился. Правда, файл пока пустой. Чтобы настроить в нем параметры подключения по OLE DB, достаточно щелкнуть по нему два раза мышью. Откроется окно настройки свойств подключения OLE DB;

q      на вкладке Поставщик данных необходимо выбрать нужный тип источника данных (в данном случае — Microsoft OLE DB Provider for SQL Server). Затем на вкладке Подключение необходимо настроить параметры подключения к SQL Server 2005 (например, так, как представлено на рис. 11.12). После этого рекомендуется нажать кнопку Проверить подключение, чтобы протестировать возможность установки соединения, и нажать кнопку OK, чтобы закрыть свойства файла с сохранением изменений.

Рис. 11.12. Настройка подключения по OLE DB

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

Следующее, что нужно сделать, — использовать этот файл для перенастройки источника данных ODBC. В соответствии с заданием, у вас есть системный источник данных ODBC (System DSN), который называется SQL1 и обращается к тому же серверу SQL Server 2005 с тем же режимом аутентификации. "Исправить" этот источник, чтобы он работал по OLE DB, можно очень просто:

q      откройте редактор реестра (набрав в командной строке regedit);

q      раскройте раздел HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\имя_вашего_источника_данных (в данном случае SQL1);

q      вместо файла DLL для параметра Driver (Драйвер) укажите созданный файл UDL (рис. 11.13).

Рис. 11.13. Замена подключения по ODBC на подключение по OLE DB

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

Отметим еще некоторые моменты, связанные с настройкой клиентских подключений к SQL Server:

q      в SQL Server 2005 предусмотрена специальная надстройка над OLE DB — SQL Native Client с большим количеством новых возможностей. Применение одной из таких возможностей, которая называется MARS (Multiple Access Result Set — множественные активные наборы результатов), в некоторых случаях позволит очень сильно повысить производительность при работе клиента с SQL Server. При использовании технологии MARS клиент может работать в асинхронном режиме и отправлять следующие запросы на SQL Server, не дожидаясь, пока придет ответ на запросы, отправленные ранее;

q      если клиентов у вас очень много (счет идет на сотни), и время установки соединения становится неприемлемым (типичная ситуация, например, для call-центра), то имеет смысл подумать о промежуточном сервере для обслуживания подключений пользователей. Обычно такой сервер работает с пулом открытых подключений к серверу SQL Server (технология называется connection pooling) и выдает свободные подключения пользователям.

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 
© 2004-2008, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru