Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
ℹ️Настоящий учебно-методический информационный материал размещён в ознакомительных и исследовательских целях и представляет собой пример учебного исследования. Не является готовым научным трудом и требует самостоятельной переработки.
Введение 5
1. Постановка задачи 6
2. Предметная область 7
2.1. Параметры конфигурации 7
2.2. Производительность 7
3. Требования 9
3.1. Функциональные требования 9
3.2. Нефункциональные требования 10
4. Обзор существующих решений 11
4.1. Литература общего плана 11
4.2. Общие практики 11
4.3. Научные работы 11
4.3.1. iTuned 12
4.3.2. OtterTune 12
5. Архитектура инструмента 13
6. Реализация 15
6.1. Протокол коммуникации ядра и агента 15
6.2. Поддерживаемые СУБД и параметры конфигурации . . 16
6.3. Детали реализации 16
6.3.1. Пакеты ядра 16
6.3.2. Пакеты агента 18
7. Апробация 19
7.1. Подготовка продуктовых данных для апробации 19
7.2. Результаты 19
8. Заключение 22
Список литературы
Приложение A. Апробационное окружение
📖 Введение
Система управления базами данных (СУБД) - неотъемлемая часть многих клиент-серверных приложений. Базы данных могут использоваться для хранения состояния приложения, результатов бенчмарков, протоколирования событий системы и т.д. Конфигурация СУБД напрямую влияет на её производительность и, как следствие, на производительность приложения и других зависящих от СУБД процессов. Конфигурация СУБД включает в себя большое количество переменных, что усложняет подбор оптимальных значений параметров и поиск узкого места в конфигурации. Помимо большого количества возможных конфигураций СУБД, задача нахождения оптимального набора параметров усложняется в виду следующих причин.
1. Большое количество факторов, которые необходимо учитывать при конфигурации СУБД (типы запросов, характеристики сервера и т.д.).
2. Настройка параметров СУБД требует определённой квалификации, поэтому возникает потребность в найме дорогостоящих специалистов [6].
3. Не существует единственно оптимального решения проблемы оптимальной конфигурации СУБД. Поэтому переиспользование конфигурации, оптимизированной под определённые условия, не может гарантировать наилучшую производительность.
Исходя из перечисленных выше особенностей, появляется необходимость автоматизации процесса подстройки параметров СУБД.
1 Постановка задачи
Целью данной работы является создание инструмента автоматической подстройки параметров СУБД.
Для достижения цели были поставлены следующие задачи.
1. Собрать и сформулировать требования к инструменту.
2. Разработать архитектуру инструмента.
3. Реализовать инструмент.
4. Апробировать инструмент на реальных данных и открытых бенч-марках.
✅ Заключение
В рамках выполнения работы были выполнены следующие задачи.
1. Были собраны и сформулированы функциональные и нефункциональные требования к инструменту.
2. Разработана модульная архитектура инструмента, абстрагирующаяся от:
• вида бенчмарка;
• СУБД и конфигурационных параметров;
• алгоритма оптимизации.
3. Реализован инструмент с интерфейсом командной строки, удовлетворяющий требованиям.
4. Был сгенерирован бенчмарк на основе нагрузки на производственную базу данных.
5. Инструмент был апробирован на сгенерированном бенчмарке и продуктовом сервере. В результате апробации, производительность базы данных на бенчмарке улучшилась на 9%.