Исследование надежности RAID-0 массивов в системах с репликацией данных

УДК 519.72

ИССЛЕДОВАНИЕ НАДЕЖНОСТИ RAID-0 МАССИВОВ В СИСТЕМАХ С РЕПЛИКАЦИЕЙ

ДАННЫХ

М.В. Локшин

В статье рассматриваются проблемы, связанные с построением отказоустойчивых систем на базе RAID-0 массивов. Проводится моделирование работы системы серверов с использованием репликации данных как инструмента повышения надежности системы. Получены результаты работы для систем вплоть до 32 серверов с количеством дисков в массиве до 16

Ключевые слова: RAID, СУБД, отказоустойчивость, репликация

В связи с расширением сфер деятельности, в которых сегодня применяются СУБД, предъявляются новые требования к их функционированию. Прежде всего - это поддержка обработки больших объемов данных. Примерами таких приложений могут служить системы поддержки принятий решений, инструменты оперативной аналитической обработки и инструменты разработки данных, приложения электронной коммерции, электронных библиотек, научные базы данных. Следует заметить, что и существующие приложения, по мере их работы, предъявляют все большие и большие требования к объему эффективно обрабатываемой информации (так как в таких системах происходит накопление данных за большой промежуток времени) .

В настоящее время, для перечисленных выше приложений, существует два основных пути решения проблемы повышения производительности:

1. Использование аппаратных решений, основанных на архитектуре симметричных мультипроцессорных систем (SMP) с использованием СУБД, способных эффективно работать на данных архитектурах. К недостаткам данного пути решения относятся ограничение в масштабируемости SMP систем и высокая стоимость как программной, так и аппаратной части данного решения.

2. Использование аппаратных решений, построенных по принципу массово-параллельной обработки (MPP). К недостаткам данного пути решения относится высокая стоимость программного обеспечения для работы в данной среде, его закрытость для анализа и работы (по крайней мере, в открытых источниках), потребность в специализированном аппаратном обеспечении (например - для СУБД Teradata).

По результатам многочисленных исследований признано, что наиболее подходящей архитектурой для построения систем поддержки принятий решений (Decision Support Systems) и оперативной аналитической обработки данных (OLAP) являются СУБД, работающие на аппаратных архитектурах построенных по принципу массово-параллельной обработки (Massively Parallel Processing) и кластерных архитектур (в настоящее время, в свете совре-

Локшин Марк Викторович - ВГТУ, канд. техн. наук, доцент, тел. (473) 243-77-18

менных тенденций развития аппаратного обеспечения, можно констатировать фактическое слияние данных архитектур). В качестве подтверждения данной точки зрения можно привести показатели теста TPC-H, где первые результаты принадлежат СУБД, работающим на данной аппаратной архитектуре (Oracle, EXASolution, ParAccel Analytic Database). Однако следует отметить, что программное обеспечение для работы в подобных архитектурах отличается высокой стоимостью. Кроме того, в настоящее время на рынке отсутствуют системы, обеспечивающие параллельную обработку данных в гетерогенных средах реляционных баз данных.

Даже в средних по масштабам предприятиях зачастую существует несколько (возможно разнородных) серверов СУБД для работы различного рода прикладного программного обеспечения. Организация работы с использованием мощности существующих серверов и СУБД (с возможным добавлением новых) для выполнения SQL запросов, оперирующих большим количеством данных, является весьма привлекательным с экономической точки зрения. Ускорение исполнения запроса должно достигаться за счет параллельного использования мощностей имеющихся серверов баз данных. Подходы и принципы построения систем данного рода описаны

в [1,2].

Фактически, для хранения и обработки баз данных больших объемов в настоящий момент считается необходимым использование параллельных систем баз данных. В реализации таких систем применяют технологии репликации. Альтернативным вариантом для эффективного управления таблицами, содержащими миллионы строк, является использование какой-либо формы разделения данных. Однако в этом случае существенным оказывается вопрос распределения нагрузки между узлами системы для разных типов запросов (если требуется обработка данных содержащихся только на одном из узлов системы).

В результате анализа возможных схем размещения данных, с учетом гетерогенной среды исполнения SQL запросов, наиболее подходящей представляется схема с полной репликацией данных между узлами системы. Это, в свою очередь, дает возможность использовать дисковые массивы RAID 0 без уменьшения требований к сохранности данных. В настоящее время с применением дисков и кон-

троллеров начального уровня можно собрать массив емкостью 10 ТБ. Отметим, что в тестах TPC-H в настоящий момент представлены только 2 результата тестов на базах большего объема.

В качестве аппаратной платформы системы целесообразно выбирать недорогие сервера начального уровня (или даже рабочие станции) объединенные в единую локально-вычислительную сеть. Основное внимание следует уделить выбору контроллера RAID массива. Для достижения производительности, которая теоретически возможна и использованием подхода к хранению данных по технологии RAID-0 контроллер должен обеспечивать параллельное чтение и запись в дисковый массив. Результаты исследования производительности контроллеров позволяют сделать вывод, что в некоторых из них не полностью реализованы возможности данной технологии, что отрицательно сказывается на общем быстродействии массива [3].

Известно, что хранение данных в массивах RAID-0 менее надежно, чем в каких-либо других типах RAID-массивов (или даже на одном диске), так как по существу, данный тип массива не обеспечивает избыточности хранения информации. Однако данный тип массива является наиболее быстрым как для операций чтения, так и для операций записи по отношению ко всем остальным типам RAID-массивов.

Предложенная в [2] схема репликации данных позволяет не только устранить недостатки относительной ненадежности RAID-0 массивов, но и увеличивать ее в необходимых пределах. Для выяснения отказоустойчивости данной схемы был проведен ее анализ, результаты которого представлены в данной работе.

Известно [4], что при постоянной интенсивности отказов функция надежности системы имеет вид:

P(t) = е ,

где l - интенсивность отказов, а вероятность выхода из строя системы, соответственно имеет вид:

F (t) = 1 - p(t) = (1 - е-1 )1(t )\

где 1(x) - единичная ступенчатая функция равная 1

при x > 0 и 0 при x < 0 . Вероятность выхода из строя системы дисков имеет вид:

F

Данная вероятность используется для расчета надежности дисков [5,6]. В работе [5] указана следующая зависимость изменения отказов от времени работы системы:

Рис. 1. Зависимость изменения интенсивности отказов от времени в соответствии с которой в первый отрезок времени, называемый периодом приработки, выходят из строя элементы, имеющие грубые дефекты не вскрытые контролем. После выявления этих дефектов интенсивность отказов уменьшается и далее остается постоянной, наступает период нормальной работы. По мере износа элементов, интенсивность отказов вновь возрастает, начинается период старения элементов.

Временные оценки продолжительности первого периода в различных источниках отличаются и составляют от 2-3 недель до 1 года. Продолжительность второго периода полагается равной 5-7 лет. Начальную интенсивность отказов можно исключить из рассмотрения, отнеся ее на период первоначальной установки и настройки системы (время «приработки» дисков порядка года, по всей видимости, является несколько завышенным).

При моделировании считается, что эксплуатация проходит в период нормальной работы (соответствует второй части кривой на рис. 1), и вероятность выхода из строя в конкретный промежуток времени является постоянной.

Было проведено исследование системы, состоящей из N серверов с массивом типа RAID-0 состоящем из П дисков. Предполагалось, что сервера объединены в локально-вычислительную сеть с пропускной способностью W . Трудности в аналитическом исследовании данной системы заключаются в том, что при расчетах следует учитывать то, что при выходе из строя жесткого диска на сервере время восстановления RAID массива зависит от загруженности сети на момент сбоя (количества серверов, которые уже вышли из строя на момент сбоя). Кроме того, вероятность отказа массивов отличных от RAID-0 изменяется в момент выхода из строя одного или нескольких дисков (для этих случаев отказ диска в массиве не влечет отказ массива). Ввиду этих факторов для исследования было применено имитационное моделирование рассматриваемой системы серверов.

Входные параметры модели:

- число серверов системы ( N ),

- количество дисков в RAID массиве ( П ),

- емкость диска,

- пропускная способность сети (W),

- максимальное число отказавших серверов (МЧОС),

- продолжительность работы системы (во всех случаях полагалась равной 5 лет).

i=1

Выходные параметры:

- число неудачных экспериментов,

- максимальное число одновременных отказов (МЧОО) - превышение параметра МЧОС в одном эксперименте в течении серии экспериментов,

- среднее число отказов серверов в час (СЧОС) - в течении серии экспериментов,

- вероятность выхода из строя одного диска,

- максимальное число вышедших из строя дисков - в течении серии экспериментов,

- среднее число отказов серверов в течении моделирования (на 1 эксперимент).

Параметр МЧОС несет двойную нагрузку. В случае, если он равен числу серверов системы, выходной параметр МЧОО означает количество смоделированных случаев, в которых были безвозвратно потеряны данные одновременно на всех серверах. В случае, если МЧОС меньше МЧОО, он играет роль критерия качества обслуживания пользователя. Превышение данного порога в этом случае означает падение скорости обработки запроса до недопустимо низких значений. В ходе проведенного моделирования параметр МЧОС полагался равным N/ 2 и

N.

Вероятность выхода из строя сервера системы рассчитывалась по формуле (1), где в качестве компонент системы рассматривались диски RAID массива. Моделирование работы системы велось с шагом в 1 час. В случае наступления события выхода из строя сервер помещался в пул вышедших из строя серверов. Одновременно восстанавливается только один сервер из данного пула. Если в процессе восстановлении сервер вышел из строя, то он снова помещается в пул вышедших из строя серверов. Такой сценарий восстановления серверов позволяет быстрее ввести в рабочее состояние часть серверов по сравнению со сценарием одновременного восстановления нескольких серверов по локальной сети.

Было проведено моделирование систем со следующими параметрами: N изменялось в пределах от 1 до 32, П от 1 до 16 и W полагалось равным 1, 7, 80, 900 или 9070 Мбит. Данные цифры пропускной способности приблизительно соответствуют пропускной способности для сетей 2, 10, 100, 1000 и 10000 Мбит. Они учитывают служебную информацию пакетов, а также трафик, генерируемый программой параллельного исполнения SQL запросов и загрузку информации поступающей в хранилище. Результаты моделирования отражены на рис. 2-6. В этих случаях количество построенных моделей было равно 100000. Среднее время наработки на отказ предполагалось равным 106 ч.

Дополнительно было проведено исследования случая систем от 1 до 4 серверов с 4 дисками в RAID-0 массиве. В этом случае количество постро-

енных моделей было равно 106. В ходе моделирования было установлено, что вероятность отказа одного сервера составляет 15,94%, что хорошо согласуется с аналитически получаемой вероятностью по формуле (1). Для двух серверов вероятность отказа составила 0.02%, для трех - 2 10-3%, четырех -3 10-4%. Также было проведено моделирование систем с 16 и 32 серверами на сетях 10 и 100 Мбит с различными дисковыми массивами ЯАГО-0 от 1 до 16 дисков. Результаты данных экспериментов отражены на рис. 5 и 6.

2

1 2 3 4 5 6 7 8 9 10 11 12 13

Рис. 2. Зависимость МЧОО и СЧОО от числа дисков в RAID массиве для 1 Мбит сетей

г

г

г

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

-МЧОО Л СЧОС I

Рис. 3. Зависимость МЧОО и СЧОО от числа дисков в RAID массиве для 10 Мбит сетей

г

г

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |  МЧОО А СЧОС |

Рис. 4. Зависимость МЧОО и СЧОО от числа дисков в RAID массиве для 100 Мбит сетей

15 16

4.5

3.5

2.5

1.5

3.5

2.5

1.5

0.5

г

1 2 3 4 5 6 7 8 9 10 11 12 13

-МЧОО й СЧОС I

1 2 3 4 5 6 7 8 9 10 11 12 13

-М400-10 Л СЧОС-10 ♦ М400-100 Я СЧОС-100 I

Рис. 5. Зависимость МЧОО и СЧОО от числа дисков в RAID массиве для 1000 Мбит сетей

Рис. 8. Зависимость МЧОО и СЧОС от числа дисков в RAID массиве для 32 серверов

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

1 2 3 4 5 6 7 8 9 10 11 12 13

—МЧОО А СЧОС I

Рис. 6. Зависимость МЧОО и СЧОО от числа дисков в RAID массиве для 10 Гбит сетей

♦ ♦ ♦

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16  МЧ00-10 * СЧ0С-10 • МЧ00-100  СЧ0С-100

Рис. 7. Зависимость МЧОО и СЧОС от числа дисков в RAID массиве для 16 серверов

Рис. 9. Процент случаев неудовлетворительного обслуживания

Из результатов моделирования, отраженных на рис. 2 видно, что предлагаемая система может функционировать с использованием канала связи 2 Мбит. Такие параметры характерны для Интернет-соединений. Использование сжатия информации при передаче данных может дать результаты, отраженные на рис. 2 для случая сети 10 Мбит (типичная степень сжатия для файлов баз данных порядка 90%). Кроме того, в Интернет-соединениях скорости в 2 Мбит может обеспечиваться между двумя произвольными узлами, а при моделировании ограничивался общий трафик для всех серверов системы, таким образом полученные цифры можно считать оценкой снизу для случая использования Интернет-соединений.

Использование распределено расположенных серверов позволяет повысить надежность хранения данных (например, если все сервера расположены в одном здании, то в случае пожара существует высокая вероятность выхода из стоя всех серверов). Также (в случае распределенного расположения серверов) возможно обеспечить использование ресурса серверов, используемых в удаленных филиалах предприятия.

Моделирование систем с пропускной способностью 10, 100 и 1000 Мбит показывают поведение системы, развернутой в локальной сети. Результаты моделирования показывают, что СЧОО пропорцио-

2.5

1.5

J.5

15 16

2.5

1.5

0.5

нально скорости сетевых соединений (при моделировании систем с указанными параметрами).

Рис. 6-7 демонстрирует зависимость числа отказов от количества дисков в RAID массиве для случаев 16 и 32 серверов. Отметим, что для случая 10 Мбит сети 16 серверов с RAID-0 массивом из 16 дисков является предельным значением, допускающим стабильную эксплуатацию. Рис. 9 отражает число случаев нарушения качества обслуживания пользователя (выход из строя 50% серверов).

Статистика ведущих производителей жестких дисков показывает достаточно большие значения среднего времени наработки на отказ для жестких дисков. При этом выходы из строя данного оборудования не редкость. Однако эти значения рассчитаны исходя из практически идеальных условий эксплуатации компьютера, то есть соблюдения тепловых и влажностных режимов, обязательного наличия стабилизированного питания. В реальной жизни таких условий достигнуть достаточно сложно, что является одним из факторов, обуславливающем отказы данного оборудования. Также на надежность работы жестких дисков оказывает большое влияние состояние блока питания компьютера, выходные электрические параметры которого со временем ухудшаются. В связи с этим вероятность выхода из строя следующего диска в RAID массиве на практике оказывается выше теоретических расчетов.

Литература

1. Локшин М.В., Кравец О.Я. Построение систем для параллельной обработки запросов к СУБД. // Телема-тика'2004: Труды XI Всероссийской научно-методической конференции (7-10 июня 2004). -СПб: ИТМО. 2004. -С. 94-95.

2. Кравец О.Я., Локшин М.В. Методы распараллеливания запросов в гетерогенных системах реляционных баз данных. Воронеж «Научная книга». 2008. -С. 184.

3. Про скорость RAID контроллеров

4. Пугачев В.С. Теория вероятностей и математическая статистика. - М.: ФИЗМАТЛИТ, 2002. -С. 496.

5. Schroeder B. Gibson G. A. Disk failures in the real world: What does an MTTF of 1,000,000 hours mean to you? // 5th USENIX Conference on File and Storage Technologies, San Jose, CA, Feb. 14-16, 2007. - P. 1-16.

6. Моргенстерн Д. Наработка на отказ жесткого диска: заблуждение или фарс?//PCWeek. 2007. № 6 -С. 48.

7. Подвальный С.Л. Многоальтернативные системы: обзор и классификация [Текст] / С. Л. Подвальный // Системы управления и информационные технологии. - 2012. -Т. 48. -. № 2- С. 4-13.

8. Тюрин С.В., Подвальный С.Л., Акинина Ю.В. Способ тестопригодного проектирования логических преобразователей // Всероссийская научно-техническая конференция «Проблемы разработки перспективных микро- и наноэлектронных систем (МЭС)». Сборник трудов. - 2010. - № 1. - С.36-41.

Воронежский государственный технический университет

RESEARCH OF FAULT TOLERANCE RAID-0 ARRAYS IN SYSTEMS WITH DATA REPLICATION

M.V. Lokshin

In article it is considered the problems connected with creation of failure-safe systems on the basis of RAID-0 of massifs. Modeling of work of system of servers with use of replication of data, as instrument of increase of reliability of system is carried out. Results a job for systems are got, up to 32 servers with quantity of disks in the massif to 16

Key words: RAID, DBMS, failover, replication