Оптимизация MySQL Server с использованием программного ... ·...

6
My SQL Оптимизация MySQL Server с использованием программного обеспечения для кэширования операций чтения/записи LSI® MegaRAID® CacheCade™ Pro 2.0 и технологии твердотельных накопителей (SSD) Для создания надежного решения необходимо обеспечить эффективное масштабирование системы хранения, используя технологии твердотельных накопителей (SSD). В предлагаемом обзорном отчете описаны преимущества производительности, предоставляемые в результате использования программного обеспечения MegaRAID CacheCade Pro 2.0 в серверном окружении MySQL. (Преимущества производительности MySQL, рассматриваемые в данном отчете, также могут быть актуальны для других схожих баз данных и транзакционных приложений.) В данном документе рассматриваются следующие результаты и преимущества использования программного обеспечения CacheCade Pro 2.0: Для выполнения задачи по обработке транзакций в рамках SysBench на реальной базе данных MySQL программное обеспечение CacheCade Pro 2.0 может обеспечить значительное увеличение производительности — измеряемое в количестве транзакций 1 в секунду. Также достигается весьма значительное уменьшение времени отклика на пользовательский запрос: до 2,5–3,5 раз для конфигураций, использующих жесткие диски SAS, и более 7 раз для конфигураций, использующих жесткие диски SATA. В данном документе также рассматриваются положительные и отрицательные последствия замены более дорогих накопителей SAS более дешевыми жесткими дисками SATA, обладающими большей емкостью. Также при использовании программного обеспечения CacheCade Pro 2.0 был достигнут более высокий уровень масштабируемости системы в рамках отдельного сервера, что было продемонстрировано путем измерения количества виртуальных пользователей, которые смогли получить доступ к базе данных при соблюдении приемлемого среднего уровня времени ожидания при выполнении запроса. Обзорный отчет ВВЕДЕНИЕ Используемые в настоящее время бизнес- приложения ограничены в своей работе из-за низкой производительности жестких дисков (HDD). Твердотельные накопители (SSD) обеспечивают 1000-кратное увеличение количества транзакций, выполняемых в секунду, но при этом характеризуются более высокой стоимостью за гигабайт (Гб). Более экономичный подход заключается в создании смешанной структуры из SSD- накопителей и жестких дисков (HDD), однако администраторам традиционно потребуется возможность настройки доступа к SSD-накопителям для наиболее важных приложений. Программное обеспечение CacheCade Pro 2.0 (см. Рис. 1) интеллектуально и динамично управляет параметрами ускорения и производительности критически важных приложений, и при этом нет необходимости осуществлять мониторинг и выстраивать конфигурацию приложений для максимального использования ресурсов SSD- накопителей и поддержания оптимального трафика операций ввода/вывода для жестких дисков (HDD). Кэш-пул CacheCade Pro 2.0 Зеркальное отражение Активные данные Неактивные данные Рисунок 1 Программное обеспечение CacheCade Pro 2.0 осуществляет интеллектуальное копирование активных данных в резервный кэш SSD, обеспечивающий быстрый доступ к данным. Сочетание программного обеспечения MegaRAID CacheCade Pro 2.0 с современной технологией SSD позволяет достичь значительно более высокой производительности транзакционных баз данных по сравнению с традиционной конфигурацией, включающей только жесткие диски..

Transcript of Оптимизация MySQL Server с использованием программного ... ·...

Page 1: Оптимизация MySQL Server с использованием программного ... · My SQL Оптимизация MySQL Server с использованием программного

My SQL

Оптимизация MySQL Server с использованием программного обеспечения для кэширования операций чтения/записи LSI® MegaRAID® CacheCade™ Pro 2.0 и технологии твердотельных накопителей (SSD)

Для создания надежного решения необходимо обеспечить эффективное масштабирование системы хранения, используя технологии твердотельных накопителей (SSD). В предлагаемом обзорном отчете описаны преимущества производительности, предоставляемые в результате использования программного обеспечения MegaRAID CacheCade Pro 2.0 в серверном окружении MySQL. (Преимущества производительности MySQL, рассматриваемые в данном отчете, также могут быть актуальны для других схожих баз данных и транзакционных приложений.)

В данном документе рассматриваются следующие результаты и преимущества использования программного обеспечения CacheCade Pro 2.0:

• ДлявыполнениязадачипообработкетранзакцийврамкахSysBenchнареальнойбазеданныхMySQL программное обеспечение CacheCade Pro 2.0 может обеспечить значительное увеличение производительности — измеряемое в количестве транзакций 1 в секунду.

• Такжедостигаетсявесьмазначительноеуменьшениевремениоткликанапользовательскийзапрос: до 2,5–3,5 раз для конфигураций, использующих жесткие диски SAS, и более 7 раз для конфигураций, использующих жесткие диски SATA.

• Вданномдокументетакжерассматриваютсяположительныеиотрицательныепоследствиязамены более дорогих накопителей SAS более дешевыми жесткими дисками SATA, обладающими большей емкостью.

• ТакжеприиспользованиипрограммногообеспеченияCacheCadePro2.0былдостигнутболее высокий уровень масштабируемости системы в рамках отдельного сервера, что было продемонстрировано путем измерения количества виртуальных пользователей, которые смогли получить доступ к базе данных при соблюдении приемлемого среднего уровня времени ожидания при выполнении запроса.

Обзорный отчет

В В Е Д Е Н И Е

Используемые в настоящее время бизнес-

приложения ограничены в своей работе

из-за низкой производительности жестких

дисков(HDD).Твердотельныенакопители

(SSD) обеспечивают 1000-кратное увеличение

количества транзакций, выполняемых в

секунду, но при этом характеризуются более

высокой стоимостью за гигабайт (Гб).

Более экономичный подход заключается в

создании смешанной структуры из SSD-

накопителей и жестких дисков (HDD),

однако администраторам традиционно

потребуется возможность настройки доступа

к SSD-накопителям для наиболее важных

приложений. Программное обеспечение

CacheCade Pro 2.0 (см. Рис. 1) интеллектуально

и динамично управляет параметрами

ускорения и производительности критически

важных приложений, и при этом нет

необходимости осуществлять мониторинг и

выстраивать конфигурацию приложений для

максимального использования ресурсов SSD-

накопителей и поддержания оптимального

трафика операций ввода/вывода для жестких

дисков (HDD).

Кэш-пул CacheCade Pro 2.0

Зеркальноеотражение

Активныеданные

Неактивныеданные

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

Сочетание программного обеспечения MegaRAID CacheCade Pro 2.0 с современной технологией SSD позволяет достичь значительно более высокой производительности транзакционных баз данных по сравнению с традиционной конфигурацией, включающей только жесткие диски..

Page 2: Оптимизация MySQL Server с использованием программного ... · My SQL Оптимизация MySQL Server с использованием программного

Обзорный отчет о производительности баз данных MySQL 2

Пакет программного обеспечения для кэширования операций чтения/записи CacheCade Pro 2.0 Пакет программного обеспечения для кэширования операций чтения/записи CacheCade Pro 2.0 позволяет использовать SSD-накопители в качестве второго уровня высокопроизводительного кэша, чтобы содействовать максимальному увеличению транзакционной производительности операций ввода-вывода. Данное решение разработано для повышения производительности операций ввода/вывода в массивах на основе жестких дисков, не требуя значительных инвестиций для покупки SSD-накопителей. В будущем программное обеспечение CacheCade позволит избежать значительных вложений, необходимых на приобретение дополнительных жестких дисков: добиться требуемого расширения системы хранения будет возможно благодаря реализации программного обеспечения.

Программное обеспечение CacheCade опирается на свою динамическую способность увеличивать скорость доступа к «горячим» точкам. Максимально допустимый рост производительности зависит от размера и технических характеристик SSD-диска по отношению к кэшируемому логическому тому, или, более точно, от общего объема активных данных по сравнению с емкостью SSD-диска.

Кроме того, данное решение позволяет системным компоновщикам устанавливать SSD-накопители только необходимого объема для работы с активными данными и использовать их с одним или несколькими томами HDD.

После выполнения небольшого объема запросов ввода-вывода на базе данных MySQL (Рис 2 ниже) можно определить, что большинство запросов базы данных на чтение и запись сконцентрировано поопределеннымадресамлогическихблоков(LBA).Алгоритмыинтеллектуальногокэшированияпрограммного обеспечения CacheCade определяют и сохраняют часто используемые активные данные в памяти SSD-дисков, значительно сокращая время отклика на запросы данных.

ТаккакбольшинствооперацийдоступаначтениеданныхточкидоступаобслуживаетсяSSD-накопителями,производительность тома жесткого диска также повышается ввиду перевода значительной части рабочих операций ввода-вывода с HDD- на SSD-накопители.

550

Рисунок 2АнализспомощьюXPERF

активности ввода-вывода базы данных

Типичныйпрофильввода-выводаприложениябазыданныхпоказывает,чтооперациичтенияизаписи

сконцентрированы в определенных разделах тома диска (приблизительно 100 Гб) для базы данных

размером 200 Гб.

Page 3: Оптимизация MySQL Server с использованием программного ... · My SQL Оптимизация MySQL Server с использованием программного

Обзорный отчет о производительности баз данных MySQL 3

Таблица 1: Подробная информация о тестовой конфигурации

Сервер • 1процессорIntelXeonL5520 - 4 ядра в каждом, 2,27 ГГц -MySQLServerSysBench• ПамятьPC3-8500объемом6Гб

Операционная система • 64-разряднаяОСMicrosoftWindows2008-R2

Эталонное программное обеспечение

• MySQLServerv5.1.55• Отраслевойстандартныйэталонный

тест транзакций •SysBenchv0.4.12,64-битныйдляОСWindows

• Использованиеусовершенствованноговыполнениятранзакций OLTP

• Использованиепроцессорабазыданных«innodb»MySQL

КонтроллерMegaRAIDSAS9280-8e • Прошивка:2.130.03-1332• ДрайверWindows:5.1.112• ПрограммауправленияMegaRAIDStorage

Manager™:8.33-01

• НастройкижесткихдисковHDDVD-Базовые:Отложеннаязапись, прямой ввод/вывод, постоянное упреждающее чтение, кэшзаписинакопителяотключен,размерблока64Кб

• НастройкижесткихдисковHDDVD—активированопрограммное обеспечение CacheCade: сквозная запись, прямой ввод-вывод, отсутствует упреждающее чтение, кэш записинакопителяотключен,размерблока64Кб

Тестовая конфигурация для жесткого диска SAS

Базовая конфигурация • Шестнадцать(16)жесткихдисковSeagateSavvio6ГБит/ссоскоростьювращения15000об/мин(ST9146852SS)• КонфигурацияRAID10длябазыданныхMySQLифайловжурнала

Конфигурация программного обеспечения CacheCade Pro 2.0, использующаяSSD-накопителиIntelX25-E3GSATA(SSDSA2SH032G1GN)

• 2накопителяRAID1,отложеннаязаписьвключена• 4накопителяRAID10,отложеннаязаписьвключена• 6накопителейRAID10,отложеннаязаписьвключена• 8накопителейRAID10отложеннаязаписьвключена

Тестовая конфигурация для жесткого диска SATA

Базовая конфигурация • Восемь(8)жесткихдисковSATASeagateConstellation3ГБит/ссоскоростьювращения7200об/мин(ST9500530NS)• КонфигурацияRAID10длябазыданныхMySQLифайловжурнала

Конфигурация программного обеспечения CacheCade Pro 2.0, использующаяSSD-накопителиIntelX25-E3GSATA(SSDSA2SH032G1GN)

• 2накопителяRAID1,отложеннаязаписьвключена• 4накопителяRAID10,отложеннаязаписьвключена• 6накопителейRAID10,отложеннаязаписьвключена• 8накопителейRAID10отложеннаязаписьвключена

Подробная информация об эталонном тесте и тестировании MySQL Чтобы смоделировать стандартное окружение обработки транзакций в режиме реального времени, на сервер была загружена реальная база данных MySQL Server, и было проведено тестирование нескольких конфигураций кэширования для SSD-накопителей, чтобы определить оптимальную конфигурацию для приложениябазыданныхразмером200Гб.ВТаблице1нижеприведенаинформацияосистемеиэталонномтесте, использование которых позволило получить данные результаты.

Результаты тестирования В процессе данного тестирования изучалась работа стандартного приложения базы данных по обработке транзакций в режиме реального времени (OLTP) в рамках реальной базы данных MySQL Server. Последовательность рабочих операций состоит как из сложных, так и из простых запросов.

Сиспользованиемэтихконфигурацийбылавыполненазагрузкабазыданныхобъемом200Гб(889000000строк), а также файлов журнала объемом 4000 МБ. Продолжительность запросов изменяется в пределах от 1до100секунд,запросна74%состоитизоперацийчтенияина26%—записи,среднийразмертранзакциисоставляетпорядка16Кбдляоперацийчтенияиразличныхзапросовввода-выводадляоперацийзаписи(как правило, от 1 Кб до 2 Кб).

ТаккакпрограммноеобеспечениеCacheCadePro2.0поддерживаеткэшированиепризаписи,SSD-накопители в томе CacheCade были зеркалированы в конфигурации RAID 1 или RAID 10 в зависимости от количества используемых SSD-накопителей. При использовании SSD-накопителей малой емкости (32 Гб) требуется больше зеркалированных SSD-накопителей, чтобы справляться с обработкой активных данных. При использовании SSD-накопителей большей емкости для достижения оптимальной производительности потребуется меньшее количество SSD-накопителей.

В конфигурации с использованием жестких дисков SAS наблюдается значительное увеличение производительности программного обеспечения CacheCade Pro 2.0, измеряемое в количестве операций в секунду (TPS): в 1,5–3,5 раза по сравнению с конфигурацией использующей только жесткие диски (Рис 3 ниже), в зависимости от емкости пула кэша CacheCade Pro 2.0.

Page 4: Оптимизация MySQL Server с использованием программного ... · My SQL Оптимизация MySQL Server с использованием программного

Обзорный отчет о производительности баз данных MySQL 4

HDD Only CCv2 2DR1WB CCv2 4DR10WB CCv2 6DR10WB CCv2 8DR10WB

16DR10SAS

Коли

чест

во т

ранз

акци

й в

секу

нду

Улуч

шен

ие (x

раз

)

300

250

200

150

100

50

0

4

3.5

3

2.5

2

1.5

1

0.5

0

Проверка времени отклика с помощью SysBench — База данных MySQL размером 200 ГБ

69.69

104.31

186.65

233.76251.07

Макс. число транз./сек.

Макс. улучшение

HDD Only CCv2 2DR1WB CCv2 4DR10WB CCv2 6DR10WB CCv2 8DR10WB

16DR10SAS

Про

верк

а ср

едне

го в

рем

ени

откл

ика

наза

прос

с п

омощ

ью S

ysBe

nch

(мс)

Умен

ьшен

ие (x

раз

)

160

140

120

100

80

60

40

20

0 0

0.2

0.4

0.6

0.8

1

1.2

Макс. ср. вр. откликаназапр. (мс)Макс. уменьшение

143.22

53.35

95.39

42.2 39.25

Проверка времени отклика с помощью SysBench — База данных MySQL размером 200 ГБ

250

200

150

100

50

0

HDD Only CCv2 2DR1WB CCv2 4DR10WB CCv2 6DR10WB CCv2 8DR10WB

8DR10SATA

Про

изво

дите

льно

сть

(тра

нзак

ций

в се

кунд

у)

Улуч

шен

ие (x

раз

)

Макс. число транз./сек.

Макс. улучшение

8

7

6

5

4

3

2

1

0

31.14

52.95

106.2

214.54225.48

Проверка времени отклика с помощью SysBench — База данных MySQL размером 200 ГБ

Рисунок 3Результаты измерения количества транзакций в секунду с помощью SysBenchдлябазыданныхMySQLразмером200ГБ,расположеннойнабазовом томе жесткого диска SAS

Рис. 5Результаты измерения количества транзакций в секунду с помощью SysBenchдлябазыданныхMySQLразмером200ГБ,расположеннойнабазовом томе жесткого диска SATA

Рис. 4 РезультатыизмерениявремениоткликаспомощьюSysBenchдлябазыданныхMySQL размером 200 ГБ, расположенной на базовом томе жесткого диска SAS

Другое преимущество программного обеспечения CacheCade Pro 2.0 состоит в том, что времена отклика для транзакций уменьшились более, чем в 2,5–3,5 раза (см. Рисунок 4), так как больший объем активных данных может выполняться за пределами кэша SSD.

Были проведены дополнительные тесты с использованием конфигурации, включающейвосемь(8)жесткихдисковSATAвместошестнадцати(16)жесткихдисковSAS.См.рисунки5и6,приведенныениже.

8DR10SATA

350

300

250

200

150

100

50

0 0

0.2

HDD Only CCv2 2DR1WB CCv2 4DR10WB CCv2 6DR10WB CCv2 8DR10WB

0.4

0.6

0.8

1

1.2

Макс. ср. вр. откликана запр. (мс)Макс. уменьшение

Сред

нее

врем

я от

клик

а си

стем

ы н

а за

прос

(мс)

Умен

ьшен

ие (x

раз

)

320.66

188.38

93.66

46.12 43.76

Проверка времени отклика с помощью SysBench — База данных MySQL размером 200 ГБ

Рис.6РезультатыизмерениявремениоткликаспомощьюSysBenchдлябазыданных MySQL размером 200 ГБ, расположенной на базовом томе жесткого диска SATA

Ключевые моменты:

• ПрикэшированииактивныхданныхвSSD-накопителяхнаблюдаетсяпрактически одинаковая производительность приложения для конфигураций, использующих как жесткие диски SAS, так и жесткие диски SATA.

• КонфигурациисиспользованиемжесткихдисковSATAпоказываютзначительное увеличение производительности если большая часть

Page 5: Оптимизация MySQL Server с использованием программного ... · My SQL Оптимизация MySQL Server с использованием программного

Обзорный отчет о производительности баз данных MySQL 5

300

250

200

150

100

50

0

0 30 60 90 120 150 180 210 240

Время (минуты)

Про

верк

а пр

оизв

одит

ельн

ости

с п

омощ

ью S

ysBe

nch

(тра

нзак

ций

в се

кунд

у)

16DR10SAS-Max только из жестких дисков (HDD)

16DR10SAS-Max из 2DR1WB

16DR10SAS-Max из 4DR10WB

16DR10SAS-Max из 6DR10WB

16DR10SAS-Max из 8DR10WB

8DR10SATA-Max только из жесткихдисков (HDD)

8DR10SATA-Max из 2DR1WB

8DR10SATA-Max из 4DR10WB

8DR10SATA-Max из 6DR10WB

8DR10SATA-Max из 8DR10WB

Рис. 7Сравнение времен выхода на

рабочую производительность для SAS и SATA

• БолеенизкаяпроизводительностьSATA-накопителяуменьшаетэффектулучшения

производительности SSD-кэша для небольшого количества зеркалированных SSD-накопителей

Конфигурация с использованием жестких дисков SATA требует больше времени для выхода на режим оптимальной производительности по сравнению с томами жестких дисков SAS. Это происходит из-за того, что SATA-накопителям требуется больше времени для обработки сбоев кэша, упомянутых ранее. В соответствии с рисунком 7, приведенным далее, конфигурации с использованием жестких дисков SATA для выхода на оптимальный режим работы требуется до четырех часов, в то время как конфигурации на основе жестких дисков SAS требуется на это в два раза меньше времени при условии использования сравнимых конфигураций пула кэша CacheCade Pro 2.0.

активных данных кэшируется в зеркалированных SSD-накопителях.

• Восемь(8)жесткихдисковSATAичетыре(4)зеркалированныхSSD-накопителяобеспечиваютболеевысокуюпроизводительностьMySQLпосравнениюс16SAS-накопителями.

• КонфигурациясиспользованиемжесткихдисковSASобеспечиваетболеевысокуюпроизводительность, чем при использовании SATA-приводов при сбоях в SSD-кэше благодаря более высокой емкости для активных данных по сравнению с доступной для SSD-кэша.

250

200

150

100

50

0

1 5 10 15 20

Сред

нее

врем

я от

клик

а си

стем

ы н

а за

прос

(мс)

Счет потоков с помощью SysBench

Макс. 100 мсВремя отклика системы

Только жесткийдиск (HDD)

2DR1-WB

4DR10-WB

6DR10-WB

8DR10-WB

Рис.8Возможность пользовательской

масштабируемости вместе с приемлемым средним временем задержки

отклика на запрос

Page 6: Оптимизация MySQL Server с использованием программного ... · My SQL Оптимизация MySQL Server с использованием программного

Для того чтобы получить более подробную информацию и узнать адреса офисов продаж, посетите веб-сайты lsi.com lsi.com/channel

ЛоготипыLSI,LSI&Design,MegaRAIDиCacheCadeявляютсятоварнымиилизарегистрированнымитоварнымизнакамиLSICorporation.Всепрочие торговые названия или наименования продукции могут являться товарными знаками или зарегистрированными товарными знаками соответствующих компаний-владельцев.

LSICorporationсохраняетзасобойправовноситьизменениявлюбойпродуктиуслугувлюбоевремябезпредварительногоуведомления.LSIненесет ответственности и не принимает на себя обязательств в связи с использованием любых продуктов и услуг, описанных в настоящем документе, за исключением четко оговоренных обязательств, закрепленных в письменной форме. Покупка, аренда или использование продукции или услуг LSI не может рассматриваться как получение лицензии в соответствии с любыми патентными правами, авторскими правами, правами на товарные знаки или любым иными правами на интеллектуальную собственность LSI или третьих сторон.

Авторскоеправо©2011г.,LSICorporation.Всеправазащищены. Сентябрь 2011 года

Дополнительные материалыДля получения дополнительной информации о решениях LSI посетите веб-страницу www.lsi.com/channel

ТакжеприиспользованиипрограммногообеспеченияCacheCadePro2.0былдостигнутболеевысокийуровень пользовательской масштабируемости для отдельного сервера, что было продемонстрировано путем измерения количества виртуальных пользователей, которые смогли получить доступ к базе данных при соблюдении приемлемого среднего уровня времени ожидания при выполнении запроса. Данный уровень времени ожидания был установлен на 100 мс, чтобы обеспечить надлежащий уровень качества предоставления услуг пользователю (QoS). При увеличении количества строк — или работников— конфигурация с использованием только жестких дисков SAS быстро выходила за рамки заданных пределов для приемлемого времени отклика. Однако использование программного обеспечения CacheCade Pro 2.0 вместе с SSD-кэшем значительно увеличивает возможную рабочую нагрузку при доступе к базе данных безущербакачествуоказанияуслуг.Вданномпримереконфигурациясиспользованиемшести(6)SSD-накопителей RAID 1 для пула кэша CacheCade Pro 2.0 могла бы теоретически обеспечить время отклика для двадцати работников, аналогичное времени отклика, которое обеспечивается для одного работника при использовании базовой конфигурации с жесткими дисками SAS.

Заключение

Программное обеспечение MegaRAID CacheCade Pro 2.0 предназначено для обеспечения наращивания производительности, снижения стоимости владения и эффективности выполнения транзакций, необходимых для соответствия требованиям современной быстро развивающейся экосистемы транзакций на основе Web 2.0.

Программное обеспечение CacheCade представляет собой эффективное средство для внедрения и использования производительности SSD-дисков, снижения стоимости транзакции, а также повышения общей производительности приложения без значительных вложений в SSD-диски. Это, в особенности, становится очевидным при осуществлении интенсивных операций произвольного чтения и записи, когда добавление

1. ВслучаесбазойданныхMySQLиэталоннымтестированиемSysBenchтранзакцияявляетсяпоследовательностьюкомандбазыданных,начинающихсяскоманды«Begin»,изаканчивающихсякомандой«Commit».РасширенныйрежимтестированиятранзакцийSysBenchпредназначендлявыполненияоперацийбазыданныхстранзакциями,поддерживающимибазуданныхMySQLInnoDB.ВследствиеиспользованияопцийкоманднойстрокикаждаятранзакцияSysBenchсостоитизследующихкомандбазыданных:указатьзапросы,указатьобластьдлязапросов,указатьобластьдлязапросовSUM,указатьобластьдлязапросовORDEREDBY,указатьобластьдлязапросовDISTINCT,применитьзапросыUPDATEстолбцаиндекса,применитьзапросыUPDATEдлястолбцов,отличныхотстолбцаиндекса,запросыDELETEизапросыINSERT.КаждаятранзакцияSysBenchсоставленатакимобразом,чтобыобщийсоставбазыданныхнеувеличилсяилинеуменьшился,другими словами, после удаления вводится аналогичный объем информации.