РПЗ_Мошкин (954311), страница 2
Текст из файла (страница 2)
Повышение производительности может быть достигнуто путем использования аппаратных средств, обладающих лучшими характеристиками производительности по сравнению с уже применяющимися.
Повышение производительности сервера, следует производить в соответствии с предварительными расчетами “узких мест” - аналитическими либо с помощью моделирования его работы. Эти расчеты показывают целесообразность увеличения производительности того или иного узла сервера - процессора, дисковой подсистемы. Аналогично для ЛВС можно определить, например, актуальность увеличения пропускной способности каналов связи.
Производительность сервера зависит от следующих факторов:
-
Количество центральных процессоров.
-
Наличие шин PCIи их большой производительности.
-
Большой объем ОЗУ.
-
Высокоскоростной дисковый интерфейс.
-
Организация дисковых подсистем с использованием дисковых массивов RAID.
-
Увеличение количества ЦП
В результате экспериментов установлено, что производительность одного процессора в многопроцессорной конфигурации можно определить по формуле:
,
где V0 – производительность процессора в однопроцессорной конфигурации,
n – количество процессоров в многопроцессорной конфигурации.
K – коэффициент снижения производительности процессора в многопроцессорной конфигурации.
В результате экспериментов было определено значение K=0,8.
Общая производительность многопроцессорной системы вычисляется по формуле:
Таблица 1. Зависимость производительности системы от количества ЦП
Количество процессоров | 1 | 2 | 3 | 4 |
Производительность процессора в однопроцессорной конфигурации | V0 | V0 | V0 | V0 |
Коэффициент снижения производительности | 1 | 0,8 | 0,64 | 0,512 |
Общая производительность | 1 | 1,6 | 1,92 | 2,048 |
Увеличение числа процессоров (и ядер, как следствие) в серверах повысит производительность системы в соответствии с графиком, приведенном ниже.
Рис. 6. Зависимость производительности от количества ЦП
-
Установка более производительного жесткого диска
Для увеличения производительности сервера можно заменить жесткий диск на более производительный.
Основными параметрами диска являются:
-
Скорость вращения диска, которая может быть равной 3600, 4200, 5000, 5400, 5900, 7200, 9600, 10000, 12000, 15000 об/мин.
-
Среднее время доступа к информации, которое рассчитывается по следующей формуле:
-
Использование RAID
Невозможность значительного увеличения технологических параметров магнитных дисков влечет за собой необходимость поиска других путей улучшения, одним из которых является параллельная обработка.
Если расположить блок данных по N дискам некоторого массива и организовать это размещение так, чтобы существовала возможность одновременного считывания информации, то этот блок можно будет считать в N раз быстрее, (без учёта времени формирования блока). Поскольку все данные передаются параллельно, это архитектурное решение называется parallel-accessarray (массив с параллельным доступом).
Рис. 7. Массив с параллельным доступом
Массивы с параллельным доступом обычно используются для приложений, требующих передачи данных большого размера.
Некоторые задачи, наоборот, характерны большим количеством малых запросов. К таким задачам относятся, например, задачи обработки баз данных. Располагая записи базы данных по дискам массива, можно распределить загрузку, независимо позиционируя диски. Такую архитектуру принято называть independent-accessarray (массив с независимым доступом).
Рис. 8. Массив с независимым доступом
Различают следующие уровни RAID:
-
RAID 0 (striping – «чередование» ) – дисковый массив из двух или более жёстких дисков с отсутствием резервирования. Информация разбивается на блоки данных (Ai) и записывается на оба/несколько дисков одновременно.
(+): За счёт этого существенно повышается производительность (от количества дисков зависит кратность увеличения производительности).
(-): Надёжность RAID 0 заведомо ниже надёжности любого из дисков в отдельности и падает с увеличением количества входящих в RAID 0 дисков, т. к. отказ любого из дисков приводит к неработоспособности всего массива.
-
RAID 1 (mirroring — «зеркалирование»).
(+): Обеспечивает приемлемую скорость записи и выигрыш по скорости чтения при распараллеливании запросов.
(+): Имеет высокую надёжность — работает до тех пор, пока функционирует хотя бы один диск в массиве. Вероятность выхода из строя сразу двух дисков равна произведению вероятностей отказа каждого диска.
(-): Недостаток заключается в том, что приходится выплачивать стоимость двух жёстких дисков, получая полезный объём одного жёсткого диска (классический случай, когда массив состоит из двух дисков).
-
RAID 3 – в массиве из nдисков данные разбиваются на блоки размером 1 байт и распределяются по n-1дискам. Еще один диск используется для хранения блоков четности.
(+): Высокая скорость чтения и записи данных; минимальное количество дисков при создании массива равно трём.
(-): массив этого типа хорошо только для однозадачной работы с большими файлами, так как время доступа к отдельному сектору, разбитому по дискам, равно максимальному из интервалов доступа к секторам каждого из дисков. Для блоков малого размера время доступа намного больше времени чтения. Большая нагрузка на контрольный диск, и, как следствие, его надежность сильно падает по сравнению с другими дисками, хранящими данные.
-
RAID 5 – блоки данных и контрольные суммы циклически записываются на все диски массива, нет асимметричности конфигурации дисков. Под контрольными суммами подразумевается результат операции XOR (исключающее или). XOR обладает особенностью, которая применяется в RAID 5, которая даёт возможность заменить любой операнд результатом, и применив алгоритм XOR, получить в результате недостающий операнд. Этот метод по сути обеспечивает отказоустойчивость 5 версии. Для хранения результата XOR требуется всего 1 диск, размер которого равен размеру любого другого диска в RAID.
(+): RAID5 получил широкое распространение, в первую очередь, благодаря своей экономичности. Объём дискового массива RAID5 рассчитывается по формуле (n-1)*hddsize, где n – число дисков в массиве, а hddsize – размер наименьшего диска. Например, для массива из 4-х дисков по 80 гигабайт общий объём будет (4 – 1) * 80 = 240 гигабайт.
(-): Производительность RAID 5 заметно ниже, в особенности на операциях типа RandomWrite (записи в произвольном порядке), при которых производительность падает на 10-25% от производительности RAID 1 (или RAID 10), так как требует большего количества операций с дисками (каждая операция записи сервера заменяется на контроллере RAID на три - одну операцию чтения и две операции записи). Недостатки RAID 5 проявляются при выходе из строя одного из дисков — весь том переходит в критический режим (degrade), все операции записи и чтения сопровождаются дополнительными манипуляциями, резко падает производительность.
-
RAID 6. Имеет более высокую степень надёжности, чем RAID5 – под контрольные суммы выделяется ёмкость 2-х дисков, рассчитываются 2 суммы по разным алгоритмам. Требует более мощный RAID-контроллер. Обеспечивает работоспособность после одновременного выхода из строя двух дисков – защита от кратного отказа. Для организации массива требуется минимум 4 диска. Обычно использование RAID-6 вызывает примерно 10-15% падение производительности дисковой группы, по сравнению с аналогичными показателями RAID-5, что вызвано большим объёмом обработки для контроллера (необходимость рассчитывать вторую контрольную сумму, а также прочитывать и перезаписывать больше дисковых блоков при записи каждого блока).
-
Комбинированные уровни
Помимо базовых уровней RAID 0 - RAID 5, описанных в стандарте, существуют комбинированные уровни RAID 1+0, RAID 3+0, RAID 5+0, RAID 1+5, которые различные производители интерпретируют каждый по-своему.
-
RAID 1+0 — это сочетание зеркалирования и чередования (см. выше).
-
RAID 5+0 — это чередование томов 5-го уровня.
-
RAID 1+5 — RAID 5 из зеркалированных пар.
Комбинированные уровни наследуют как преимущества, так и недостатки своих «родителей»: появление чередования в уровне RAID 5+0 нисколько не добавляет ему надёжности, но зато положительно отражается на производительности. Уровень RAID 1+5, наверное, очень надёжный, но не самый быстрый и, к тому же, крайне неэкономичный: полезная ёмкость тома меньше половины суммарной ёмкости дисков.
Таблица 2. Сравнение стандартных уровней RAID
Уровень | Кол-во дисков | Эффективная ёмкость | Отказоустой-чивость | Преимущества | Недостатки |
0 | любое | S * N | нет | Наивысшая производительность | Очень низкая надежность |
1 | четное, от 2 | S * N / 2 | 1 диск | Высокая производительность и надежность | Стоимость дискового пространства больше в Nраз |
10 или 01 | четное, от 4 | S * N / 2 | 1 диск | Наивысшая производительность и очень высокая надежность | Двойная стоимость дискового пространства |
5 | от 3 до 16 | S * (N - 1) | 1 диск | Экономичность, высокая надежность | Производительность ниже RAID 0 и 1 |
50 | четное, от 6 | S * (N - 2) | 1 диск | Высокая надежность и производительность | Высокая стоимость и сложность обслуживания |
6 | от 4 | S * (N - 2) | 2 диска | Экономичность, наивысшая надежность | Производительность ниже RAID 5 |
N – количество дисков в массиве, S–объём наименьшего диска.
-
Дисковые интерфейсы
Таблица 3. Сравнение дисковых интерфейсов
Название интерфейса | Пропускная способность, Мбит/с | Макс. длина кабеля, м | Количество накопителей на канал | Число проводников в кабеле | Другие особенности |
UltraATA/133 | 1064 | 0,46 | 2 | 40/80 | Controller+ 2Slave, горячая замена невозможна |
SATA-300 | 3000 | 1 | 1 | 7 | Host/Slave, возможна горячая замена на некоторых контроллерах |
FireWire/400 | 400 | 4,5 (при послед.соед. до 72 м) | 63 | 4/6 | устройства равноправны, горячая замена возможна |
FireWire/800 | 800 | 4,5 (при послед.соед. до 72 м) | 63 | 4/6 | устройства равноправны, горячая замена |
Название интерфейса | Пропускная способность, Мбит/с | Макс. длина кабеля, м | Количество накопителей на канал | Число проводников в кабеле | Другие особенности |
USB 2.0 | 480 | 5 (при послед.соед., через хабы, до 72 м) | 127 | 4 | Host/Slave, горячая замена возможна |
USB 3.0 | 4800 | 5 | Нет данных | 9 | Двунаправленный, совместим с USB 2.0 |
Ultra-320 SCSI | 2560 | 12 | 16 | 50/68 | устройства равноправны, горячая замена возможна |
SAS | 3000 | 8 | Свыше 16384 | горячая замена; возможно подключение SATA-устройств в SAS-контроллеры | |
eSATA | 3000 | 2 | 1 (с умножителем портов до 15) | 7 | Host/Slave, горячая замена возможна |
-
Шины PCI
PCI – шина ввода/вывода для подключения периферийных устройств к материнской плате компьютера.