русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Задержки ввода-вывода и SQL Server


Дата добавления: 2015-08-14; просмотров: 911; Нарушение авторских прав


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

Если длительность выполнения операций ввода-вывода слишком велика, то эти ресурсы будут блокированы недопустимо долго, еще сильнее замедляя работу системы. Кроме того, это повышает вероятность тупиковых ситуаций (взаимоблокировок). Чем дольше выполняются операции ввода-вывода, тем дольше длятся и блокировки и тем серьезнее становятся эти проблемы. И в результате отдельные задержки могут сложиться, вызвать "эффект снежного кома" и испортить работу системы.

Кроме того, обработка запросов станет очень медленной. Например, если на вашей системе выполняется сканирование больших таблиц, то для выполнения таких задач часто требуется чтение сотен, тысяч и даже миллионов строк в базах данных. Для миллиона операций ввода-вывода даже небольшие изменения производительности становятся очень важными. Выполнение одного миллиона операций по 10 мс займет около 2,8 часа. А если ваша подсистема ввода-вывода оказалась перегружена и каждая операция ввода-вывода требует 40 мс, то выполнение такого же запроса займет уже более 11 часов.

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



Планирование размещения дисков SQL Server

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



<== предыдущая лекция | следующая лекция ==>
Сравнение различных уровней RAID | Объем дисковой памяти


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.414 сек.