1С Предприятие 7.7. Документация



         

Почему SQL "тормозит"? - часть 4


Теперь посмотрим, что же происходит с сервером в SQL-системе. Ведь север сам выполняет полученный запрос, поэтому, легко представить себе, что если с SQL-системой работают 10 пользователей, то для сервера это практически то же самое, как если бы на нем были одновременно запущены 10 экземпляров программы, с которой работают пользователи (например 10 локальных копий 1С-Торговли). Попробуйте запустить локально на каком-нибудь Pentium 200 или 266 десять экземпляров 1C-Торговли и выполнить одновременно 10 отчетов об остатках на складе. Сделав это и оценив результат Вы поймете, что всякие разговоры о "торможении" SQL-системы без обсуждения параметров сервера не имеют смысла. SQL-системы крайне прожорливы на ресурсы сервера. По-хорошему для таких систем вообще следует использовать компьютеры с RISC процессорами в многопроцессорном варианте (что-нибудь из продукции SUN Microsystems). Однако, для наших бедных клиентов с их ограниченными финансовыми возможностями SQL-системы все равно имеют существенное преимущество: даже при использовании сервера стоимостью 4-5 тыс. долларов они будут работать со вполне приемлемой скоростью с базами данных такого объема, на котором обычные файл-серверные системы просто заткнутся. Причем, этот объем может достигать величин в десятки ГИГАБАЙТ. Ведь доступ к данным очень быстр - они расположены здесь же, на диске сервера и не требуют передачи по сети для последующей обработки. Все запросы поступают к серверу, так что кроме обычного файлового кэширования есть огромные возможности по оптимизации выполнения запросов, их распараллеливанию. Эти возможности уже заложены в программное обеспечение MS SQL Server, а от разработчиков из "1С" требуется так написать исполняющую часть программы, чтобы использовать эти возможности в полной мере. Возможно также применение различных хитростей, например серверов-репликаторов (для разделения групп пользователей на тех, кто пользуется только отчетами, т.е работает в режиме "только чтение", и тех, кто активно модифицирует данные) или разноски данных по разным дисковым устройствам. При перегрузке дисковой системы она легко модернизируется, например с помощью RAID-массива (не забывайте однако, что SQL-система - это вообще иная ценовая категория как по цене матобеспечения, так и по цене железа). В результате при правильном проектировании системы (если не обнаружатся любители выдавать крутые запросы, результатом которых будет перекачка всей базы данных по сети), 100Мбит-ная сеть может не понадобиться. Вот что в первую очередь дает SQL-система. Вообще, SQL-система предоставляет значительные возможности для оптимизации аппаратной части и настройки программной части. И говорить о "торможении" SQL-системы имеет смысл только тогда, когда эти возможности исчерпаны.




Содержание  Назад  Вперед