Тип работы:
Предмет:
Язык работы:


КОНСЕРВАТИВНЫЕ СУБД КЛАССА BIGDATA С РЕГУЛЯРНЫМ ПЛАНОМ ОБРАБОТКИ ЗАПРОСОВ НА КЛАСТЕРНОЙ ПЛАТФОРМЕ

Работа №76061

Тип работы

Дипломные работы, ВКР

Предмет

информационные системы

Объем работы195
Год сдачи2019
Стоимость4225 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
146
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 4
ГЛАВА 1. ОБЗОР СОСТОЯНИЯ РАЗРАБОТОК ПАРАЛЛЕЛЬНЫХ СУБД 13
1.1. Предварительное рассмотрение 13
1.2. Обзор популярных СУБД 19
1.3. Обзор отечественных разработок 25
1.4. Обзор подхода NoSQL 31
1.5. Выводы по главе 1 34
ГЛАВА 2. ПОСТАНОВКА ОСНОВНОЙ ЗАДАЧИ 36
2.1. Принятые ограничения 36
2.2. Предлагаемый метод претрансляции запросов 37
2.3. Разработанный метод настройки MySQL 43
2.4. Принятая методология 45
2.5. Принятые постулаты 49
2.6. Выбор и разработка начального состояния /S-модели 51
2.7. Выводы по главе 2 69
ГЛАВА 3. /^-МОДЕЛИРОВАНИЕ CLUSTERIX-N. ИТЕРАЦИИ 1 - 4 70
3.1. Архитектура для первой итерации внутреннего /^-моделирования
Clusterix-N 70
3.2. Экспериментальное исследование на первой итерации /S-моделирования
Clusterix-N 84
3.3. Вторая итерация /S-моделирования Clusterix-N 91
3.4. Третья итерация /S-моделирования Clusterix-N 95
3.5. Четвертая итерация /S-моделирования Clusterix-N 98
3.6. Выводы по главе 3 101
ГЛАВА 4. АЛЬТЕРНАТИВА СИСТЕМЫ CLUSTERIX-N ПРИ УМЕРЕННЫХ
ОБЪЕМАХ БАЗ ДАННЫХ 103
4.1. Архитектура PerformSys 103
4.2. Платформа SUN-кластера. Исследование при объемах баз данных в
единицы GB 116
4.3. Платформа GPU-кластера без использования акселераторов. Случаи баз
данных в десятки и сотни GB 124
4.4. Выводы по главе 4 126
ГЛАВА 5. НЕКОТОРЫЕ ПЕРСПЕКТИВЫ ДЛЯ ДАЛЬНЕЙШЕГО 128
5.1. Работа со сжатыми базами данных 128
5.2. Кросс-моделирование территориально распределенных СУБД 142
5.3. Выводы по главе 5 150
ЗАКЛЮЧЕНИЕ 152
ОПИСОК СОКРАЩЕНИЙ И УСЛОВНЫХ ОБОЗНАЧЕНИЙ 155
СЛОВАРЬ ТЕРМИНОВ 156
СПИСОК ЛИТЕРАТУРЫ 157
ПРИЛОЖЕНИЕ А. РАЗРАБОТАННЫЕ ДЛЯ НАЧАЛЬНОГО СОСТОЯНИЯ
СЕРВИСНЫЕ СРЕДСТВА 163
А.1. Подсистема журналирования 163
А.2. Подсистема сбора статистики и визуализации 164
А.3. Модуль сетевого взаимодействия 172
A.4. Драйвер СУБД 175
ПРИЛОЖЕНИЕ Б. ЛИСТИНГИ 179
ПРИЛОЖЕНИЕ В. ДИАГРАММЫ ФУНКЦИОНИРОВАНИЯ CLUSTERIX-N ... 183
B.1. Итерация 1 183
В.2. Итерация 2 и 3 186
В.3. Итерация 4 189
ПРИЛОЖЕНИЕ Г. РЕГИСТРАЦИЯ ПРОГРАММ ДЛЯ ЭВМ 192
ПРИЛОЖЕНИЕ Д. АКТ О ВНЕДРЕНИИ РЕЗУЛЬТАТОВ ДИССЕРТАЦИИ В
УЧЕБНЫЙ ПРОЦЕСС КНИТУ-КАИ 193
ПРИЛОЖЕНИЕ Е. АКТ О ВНЕДРЕНИИ РЕЗУЛЬТАТОВ ДИССЕРТАЦИИ В
ООО «АМР СИСТЕМЫ» 194


Актуальность исследований. Объемы собираемых и хранимых данных в современных информационных системах достигают огромных объемов, исчисляемых десятками, сотнями GB и TB, а порой и PB. Объемы БД в десятки и сотни GB все чаще встречаются у относительно небольших предприятий. Терабайтные и пета-байтные объемы присущи территориально распределенным системам: социальные сети, поисковые системы, государственные информационные системы и др. Например, размер БД с сообщениями пользователей социальной сети «ВКонтакте» на 2017 год составлял ~ 324 TB [1], а поисковые системы давно преодолели пета- байтный порог (50 PB для «Яндекс» в 2016 году [2]). Кроме того, объемы хранимых данных по результатам разного рода испытаний и наблюдении также могут быть весьма значительными: от десятков GB до единиц PB [3].
Своевременная обработка накопленных данных требует применения высокопроизводительных вычислительных средств (HPC) и специализированного программного обеспечения - СУБД консервативного типа с эпизодическим обновлением данных. Имеется множество коммерческих и свободных разработок параллельных СУБД на платформе вычислительных кластеров (Microsoft SQL Server, Oracle Database, PostgreSQL, MySQL Cluster и др.). Но все они ориентированы, в основном, на OLTP нагрузку [4], которая характеризуется выполнением множества сравнительно простых операций типа selectи insertнад динамически изменяемыми базами данных. Причина в том, что серьезной проблемой для высокопроизводительных реляционных СУБД всегда было и остается повышение скорости обработки сложных запросов [5, 6]. Для консервативных СУБД свойственна OLAP нагрузка [7], которая характеризуется высоким удельным весом сложных запросов типа «селекция - проекция - соединение», оперирующих множеством таблиц с большим числом операций соединения.
Разработки в этом направлении ведутся. В коммерческом секторе уже сейчас последние версии СУБД от Microsoft SQL Server 2016 и 2017 могут быть применены для аналитической обработки в рамках одного узла [8]. Производительность Microsoft SQL Server 2016 на одном сервере Lenovo x3950X6 [9] (8 вычислительных модулей, 144 ядра) с внешней флеш-памятью ~120 TB и объемом оперативной памяти 12 TB, при совокупной стоимости системы $2 634 342 (стоимость Lenovo x3950X6 ~$1,5 млн., стоимость Windows Server 2016 и SQL Server 2016 Enterprise Edition ~$1 млн.), показывает отличные результаты [10] на тесте TPC-H [11]. У Oracle имеется собственная программно-аппаратная платформа Exadata [12] обладающая примерно такой же стоимостью аппаратуры (~$1,5 млн.) на одну стойку в средней комплектации: 2 сервера БД (192 CPU Cores / 3 TB RAM / 12 TB Flash Storage на каждый сервер) и 14 серверов хранилища (20 CPU Cores / 3 TB RAM / 24 TB Flash Storage / 120 TB HDD Storage на каждый сервер). Что более выгодно, чем Lenovo x3950X6, но программное обеспечение для Exadata в стоимость не входит и приобретается отдельно. Поэтому, если установить на эту платформу СУБД Oracle Database с расширением для OLAP обработки, то к стоимости системы прибавится стоимость ПО ~$9 млн. За столь высокой стоимостью коммерческих систем кроются гарантии производителя в надежности и высокой производительности его системы.
Альтернативой дорогим коммерческим СУБД являются свободные СУБД с открытым исходным кодом, ориентированные на работу с БД повышенного объема (PostgreSQL XL, MySQL Cluster, Spark и др.). Их главное преимущество - доступность и независимость разработки. Но они существенно уступают коммерческим по надежности и, в меньшей мере, по производительности. Кроме того, никто не гарантирует их корректную работу, никто не несет ответственности в случае отказа в работе. Настройка и эксплуатирование таких систем полностью ложится на системных администраторов, которые вынуждены принимать меры по повышению надежности подконтрольных им систем своими силами.
Многие свободные СУБД поддерживаются корпорациями, которые предоставляют платные услуги по их настройке и обслуживанию. Ярким примером такой СУБД является MySQL, которая хоть и является СУБД с открытым исходным кодом, но ее поддержкой занимается Oracle. Стоимость такой поддержки в среднем равна $10 000 на один сервер в год, что гораздо дешевле стоимости оригинальной Oracle Database в разы.
Свободные СУБД позволяют экономить большое количество средств на ПО. Но для достижения приемлемой производительности на БД повышенного объема, они требуют использования самых мощных вычислительных узлов, что не всегда возможно. Уменьшить стоимость аппаратной платформы представляется возможным заменой одного мощного узла группой маломощных узлов с целью распределения данных и работ по ним. Такой подход применен в СУБД PostgreSQL XL, но ее производительность и надежность оставляют желать лучшего [13].
Разрабатываемые в диссертации прототипы СУБД предназначены для изыскания возможностей реализации экономичных параллельных/распределенных консервативных СУБД повышенных объемов, которые смогут эффективно обрабатывать поток запросов к БД объемом в десятки и сотни GB на сравнительно недорогих кластерных платформах с применением средств MySQL и GPU-акселераторов на исполнительном уровне. Использование готовой СУБД обусловлено тем, что создание полнофункциональной новой СУБД может занять годы при работе большой команды высококвалифицированных разработчиков. Поэтому, чтобы не оказаться в догоняющей позиции, новые отечественные СУБД следует создавать на базе готовых СУБД с открытым кодом и свободной лицензией, поддерживаемых международным сообществом. PostgreSQL является более совершенной СУБД, чем MySQL, и активно позиционируется на территории России [14]. Но MySQL позволяет использовать различные «движки» и имеет систему расширений [15]. Эти особенности упрощают и ускоряют разработку.
Разработанный в диссертации исследовательский прототип параллельной консервативной СУБД Clusterix-N ориентирован на ускорение (в сравнении с СУБД Clusterix [16]) обработки запросов к БД повышенных объемов (не умещающихся в оперативной памяти одного узла). Повышение объема баз данных требует их хеширования по узлам кластера, что обуславливает необходимость использования регулярного плана обработки запросов. Суть предлагаемого подхода состоит в соответствующей организации пакетной передачи данных и использовании GPU-ускорителей.
Альтернативой Clusterix-N при БД объемом, не превышающим размера оперативной памяти одного узла (единицы и десятки GB) является второй разработанный в диссертации исследовательский прототип консервативной СУБД Per- formSys. Он ориентирован на обработку большого потока запросов к БД малого объема с полной загрузкой процессорных ядер. Работа прототипа организуется со-гласно стратегии «ядро на запрос +1» [17]. Система реализована на платформе вычислительных кластеров, использует в качестве инструментальной СУБД MySQL и эксплуатирует ряд ее возможностей: выделение отдельного потока под запрос, хранение БД в оперативной памяти. Увеличение объема БД существенно снижает производительность. Для сохранения производительности с ростом объема данных необходимо заменять узлы кластера на более мощные, что не всегда возможно.
В настоящее время правительством РФ взят курс на импортозамещение, в связи с чем серьезное внимание уделяется созданию на базе открытых систем (PostgreSQL, MySQL и др.) отечественных СУБД общего и специального назначения. Поэтому разработка и исследование принципов построения и программной организации сравнительно недорогих отечественных СУБД повышенных объемов является актуальной задачей.
Цели исследований. Основной целью является повышение эффективности (по критерию «производительность/стоимость») экономичных систем консервативных баз данных повышенных объемов при обработке по регулярному плану (используемому в СУБД Clusterix) непрерывных потоков сложных запросов типа «селекция - проекция - соединение» до уровня, сравнимого с технологией Spark, полагаемой в настоящее время наиболее перспективной. Развитие технологии PerformSys, перспективной при умеренных объемах баз данных, служит дополнительной целью.
Задачи исследований. В соответствии с поставленной целью основной задачей исследований является анализ возможностей реализации экономичных консервативных СУБД повышенных объемов - СУБД Clusterix-N, сравнимых по эффективности с системой Spark при обработке потока запросов к БД объемом в сотни GB и более на сравнительно недорогих кластерных платформах с использованием регулярного плана обработки запросов, применением средств MySQL и GPU-акселераторов на исполнительном уровне. Дополнительная задача - архитектурно-алгоритмическая и программная разработка альтернативной системы (PerformSys) при умеренных объемах баз данных и анализ перспектив дальнейших исследований по развитию рассматриваемых IT-технологий.
Решение этих задач связывается с проведением следующих исследований, отраженных в главах 2-5 работы соответственно:
- Изыскание специальной настройки инструментальной СУБД MySQL на максимальную загрузку процессорных ядер при работе с консервативными СУБД; разработка способа претрансляции запросов к регулярному плану; интерпретация методологии конструктивного моделирования систем применительно к решению задачи синтеза консервативных СУБД; выбор и разработка начального состояния этого итеративного процесса.
- Итеративная разработка и исследование иерархической модели синтеза СУБД Clusterix-N согласно методологии конструктивного моделирования систем вплоть до получения состояния этой модели, удовлетворяющего поставленной цели.
- Разработка предложений по архитектуре PerformSys и сравнительное ис-следование ее эффективности на платформах SUN- и GPU-кластеров при различных объемах БД.
- Анализ перспектив перехода от системы Clusterix-N к системе Clusterix- G с работой со сжатыми БД и более широким использованием GPU-ускорителей. Выяснение перспектив балансировки нагрузки в территориально распределенных консервативных СУБД с целью повышения их пропускной способности .
Научная новизна:
1. Разработан способ претрансляции запросов к регулярному плану, основанный на таком дроблении исходного запроса на SQL-фрагменты, который, в отличие от использованного для Clusterix метода, позволяет использовать его с различными инструментальным СУБД.
2. Предложена интерпретация методологии конструктивного моделирования систем применительно к задаче моделирования процесса синтеза консервативных СУБД класса BigData, которая, в отличие от ранее использованной для Clus-terix-подобных СУБД, позволяет добиться большей эффективности системы.
3. Предложен и реализован метод параллельной обработки селективных запросов в СУБД Clusterix-N на уровне IO, основанный на поблочной выборке из СУБД MySQL, что, в отличие от ранее реализованного метода в Clusterix-подобных системах, позволяет использовать все процессорные ядра всех узлов IO для обработки одного селективного запроса с полной загрузкой процессорных ядер.
4. Для СУБД Clusterix-N предложены и реализованы методы сосредоточен-ной и распределенной динамической сегментации промежуточных/временных отношений с применением GPU-ускорителей, основанные на хешировании c ускорением на GPU и распределении данных по всем процессорным ядрам всех узлов JOIN, что, в отличие от реализации этой процедуры в СУБД Clusterix [16] и Clusterix-M [18], позволяет существенно ускорить операции хеширования, загрузить все процессорные ядра всех узлов уровня JOIN и более эффективно использовать сеть.
5. Предложен и реализован в СУБД PerformSys метод распределения потока запросов по процессорным ядрам кластерной платформы с их полной загрузкой, основанный на стратегии «запрос на ядро +1», что, в отличие от реализации в MySQL Router [19], позволяет передавать в узлы ровно столько запросов, сколько они могут эффективно обработать.
6. Выявлена возможность дальнейшего повышения эффективности Clusterix-подобных систем (переход от Clusterix-N к архитектуре Clusterix-G), основанного на работе со сжатыми БД, что, в отличие от применения GPU для выполнения SQL запросов в [20, 21], позволяет увеличить объемы хранимых данных и ускорить их передачу по сети.
7. Предложены методы межрегиональной балансировки нагрузки для территориальной распределенных консервативных СУБД, основанные на подсчете веса очередей и времени активности каждого региона, что, в отличие от общепринятых методов балансировки нагрузки [22], позволяет более равномерно распределять нагрузку по регионам и увеличить эффективность эксплуатации территориально распределенных СУБД.
Научная значимость полученных результатов:
1. Проведенное в диссертации конструктивное моделирование консервативных СУБД с регулярным планом обработки запросов позволило существенно пополнить состав развитых ранее элементов содержательной теории таких СУБД анализом возможностей полной загрузки процессорных ядер, использования гибридных технологий и блочной динамичной сегментации отношений.
2. Разработка в диссертации четырех версий СУБД Clusterix-N и получение в последней итерации моделирования результатов, сравнимых с технологией MapReduce, поможет актуализации широкомасштабных научных исследований по дальнейшему развитию теории консервативных СУБД класса BigData с регулярным планом обработки запросов.
3. Позитивные результаты выполненного в диссертации кросс-моделирования межрегиональной балансировки нагрузки территориально распределенных СУБД консервативного типа показывают целесообразность развертывания серьезных научных исследований в этом направлении.
Практическая значимость. Помещенные в открытый доступ исследовательские прототипы систем PerformSys и Clusterix-N могут быть использованы как действующая платформа для создания экономично-эффективных аналитических систем в организациях с ограниченными финансовыми возможностями и изучения вопросов параллельной/распределенной обработки данных в учебном процессе ВУЗов.
Основные положения, выносимые на защиту:
1. Специальная настройка инструментальной СУБД MySQL на максимальную загрузку процессорных ядер при работе с консервативными СУБД; способ претрансляции запросов к регулярному плану; интерпретация методологии конструктивного моделирования систем применительно к задаче моделирования процесса синтеза консервативных СУБД. (отвечает пунктам 1 и 8 паспорта специальности 05.13.11).
2. Оригинальные программные разработки с экспериментальной проверкой, которые требуется выполнять многократно в процессе итеративного исследования - начальное состояние модели и итерации 1 - 4 в процессе разработки модели синтеза СУБД Clusterix-N (отвечает пунктам 1, 4 и 8 паспорта специальности 05.13.11).
3. Методы, алгоритмы и программы СУБД «PerformSys». Результаты экспериментального исследования на платформах SUN- и GPU-кластеров при сравнительно небольших и повышенных объемах БД (отвечает пунктам 4 и 8 паспорта специальности 05.13.11).
4. Результаты предварительной теоретической оценки перспектив перехода от системы Clusterix-N к системе Clusterix-G с работой со сжатыми БД и более широким использованием GPU-ускорителей (отвечает пунктам 1 и 8 паспорта специальности 05.13.11).
5. Перспективы балансировки нагрузки в территориально распределенных консервативных СУБД с целью повышения их пропускной способности. (отвечает пунктам 1 и 9 паспорта специальности 05.13.11).
Объект исследования. Параллельные и распределенные СУБД консервативного типа на кластерной платформе с графическими ускорителями и без них, основанные на свободных СУБД общего назначения.
Предмет исследования. Модели, алгоритмы и программы параллельных/распределенных СУБД консервативного типа повышенных объемов.
Обоснованность и достоверность результатов диссертации. Обоснованием может служить использование в процессе проведенных исследований методологии конструктивного моделирования систем, развитых элементов теории баз данных, параллельных и распределенных вычислений, объектно-ориентированного программирования. Достоверность подтверждена экспериментально на натурных моделях, разработанных с применением оригинальных программных инструментальных средств.
Соответствие работы специальности ВАК 05.13.11. Работа отвечает следующим пунктам паспорта специальности 05.13.11 (в квадратных скобках указаны соответствующие позиции диссертации):
п.1. Модели, методы и алгоритмы проектирования и анализа программ и программных систем, их эквивалентных преобразований, верификации и тестирования. [Модели, методы и алгоритмы проектирования программ и программных систем управления консервативными базами данных. Тестирование разработанных СУБД].
п.4. Системы управления базами данных и знаний. [Разработаны исследовательские версии СУБД Clusterix-N и PerformSys].
п.8. Модели и методы создания программ и программных систем для параллельной и распределенной обработки данных, языки и инструментальные средства параллельного программирования. [Математическая модель процесса синтеза Clusterix- подобных систем, методы создания программ и программных систем параллельных СУБД на платформе вычислительных кластеров с графическими ускорителями].
п.9. Модели, методы, алгоритмы и программная инфраструктура для организации глобально распределенной обработки данных. [Модели, методы, алгоритмы межрегиональной балансировки нагрузки в территориально распределенных СУБД].
Апробация работы. Основные результаты работы неоднократно докладывались и обсуждались на Международной молодежной научной конференции «Туполевские чтения» (Казань, 2013, 2015), Международной научно-методической конференции «Информатика: проблемы, методология, технологии» (Воронеж, 2016), Международной конференции и молодежной школы «Информационные технологии и нанотехнологии» (Самара, 2016), Республиканском научном семинаре АН РТ «Методы моделирования» (Казань, 2015-2018), Международной научной конференции «Системы компьютерной математики и их приложения» (Смоленск, 2018), обсуждение на кафедре системного анализа и информационных технологий КФУ (Казань, 2019).
Публикации. Основные результаты по теме диссертации изложены в 14 печатных изданиях, 9 из которых изданы в журналах, рекомендованных ВАК (включая одну SCOPUS-статью), 1 - в РИНЦ-журнале, 4 - в материалах конференций, индексированных в РИНЦ. По выполненным разработкам получено одно свидетельство о государственной регистрации программы для ЭВМ.
Объем и структура работы. Диссертация состоит из введения, пяти глав и заключения. Полный объем диссертации составляет 195 страниц, включая 54 рисунка, 19 таблиц и 6 приложений. Объем основной части диссертации (без приложений) составляет 162 страницы. Список литературы содержит 130 наименований.


Возникли сложности?

Нужна помощь преподавателя?

Помощь студентам в написании работ!


В диссертационной работе была рассмотрена проблема создания высокоэффективных (по критерию «производительность/стоимость») открытых (open source) консервативных СУБД класса BigData с регулярным планом обработки запросов на кластерных платформах c GPU-ускорителями. Выполнена архитектурно-алгоритмическая разработка и программная реализация исследовательских проектов четырех эффективных версий системы Clusterix-N (с сосредоточенной и распределенной динамической сегментацией отношений) и PerformSys (как удачной альтернативы систем Clusterix-N при умеренных объемах баз данных и большом количестве обслуживаемых пользователей). Экспериментально найдены сравни-тельные оценки их эффективности.
Следуя методологии конструктивного моделирования систем, решение для Clusterix-N искалось итеративно из условия конкурентоспособности (по эффективности) с перспективной системой Spark. При этом переходы между итерациями S- моделирования были определены найденной в самом процессе моделирования внешней (математической) моделью. Характерно, что результаты любой из итераций приемлемы для практического использования при тех или иных финансовых ограничениях. Поставленные цели работы достигнуты.
Основные результаты работы
1. Разработан способ претрансляции запросов к регулярному плану, основанный на таком дроблении исходного запроса на SQL-фрагменты, который, в отличие от использованного для Clusterix метода, позволяет использовать его с различными инструментальным СУБД.
2. Предложена интерпретация методологии конструктивного моделирования систем применительно к задаче моделирования процесса синтеза консервативных СУБД класса BigData, которая, в отличие от ранее использованной для Clusterix- подобных СУБД, позволяет добиться большей эффективности системы.
3. Предложен и реализован метод параллельной обработки селективных запросов в СУБД Clusterix-N на уровне IO, основанный на поблочной выборке из СУБД MySQL, что, в отличие от ранее реализованного метода в Clusterix-подобных системах, позволяет использовать все процессорные ядра всех узлов IO для обработки одного селективного запроса с полной загрузкой процессорных ядер .
4. Для СУБД Clusterix-N предложены и реализованы методы сосредоточен-ной и распределенной динамической сегментации промежуточных/временных отношений с применением GPU-ускорителей, основанные на хешировании c ускорением на GPU и распределении данных по всем процессорным ядрам всех узлов JOIN, что, в отличие от реализации этой процедуры в СУБД Clusterix и Clusterix- M, позволяет существенно ускорить операции хеширования, загрузить все процессорные ядра всех узлов уровня JOIN и более эффективно использовать сеть.
5. Предложен и реализован в PerformSys метод распределения потока запросов по процессорным ядрам кластерной платформы с их полной загрузкой, основанный на стратегии «запрос на ядро +1», что, в отличие от реализации в MySQL Router [19], позволяет передавать в узлы ровно столько запросов, сколько они мо-гут эффективно обработать.
6. Выявлена возможность дальнейшего повышения эффективности Clusterix- подобных систем (переход от Clusterix-N к архитектуре Clusterix-G), основанного на работе со сжатыми БД, что, в отличие от применения GPU для выполнения SQL запросов, предложенного в [20, 21], позволяет увеличить объемы хранимых данных и ускорить их передачу по сети.
7. Предложены методы межрегиональной балансировки нагрузки для территориальной распределенных консервативных СУБД, основанные на подсчете веса очередей и времени активности каждого региона, что, в отличие от общепринятых методов балансировки нагрузки [22], позволяет более равномерно распределять нагрузку по регионам и увеличить эффективность эксплуатации территориально распределенных СУБД.
В процессе проведенных исследований содержательная теория консервативных СУБД кластерного типа была пополнена следующими элементами:
1. Инструментальная СУБД MySQL должна настраиваться на полную загрузку всех процессорных ядер, по-разному для различных функциональных узлов.
2. Близкой к оптимальной конфигурации монокластера является «совмещенная симметрия».
3. При выполнении динамической сегментации отношений, во избежание перегрузки сети, информация должна передаваться блоками, формируемыми на множестве процессоров IO и JOIN.
4. Операции select-project, joinи агрегирования должны выполняться параллельно на полном собственном множестве процессорных ядер.
Соответствие работы специальности ВАК 05.13.11. Работа отвечает следующим пунктам 1, 4, 8 и 9 паспорта специальности ВАК 05.13.11.
Квалификационный признак работы. В работе изложены новые научно обоснованные технические решения и разработки, имеющие существенное значение для развития отечественных технологий параллельных СУБД.


1. Егоров Д Переписать базу сообщений с нуля и выжить // Блог vk.com. 2017. URL: https:// vk.com/blog/messages-database(дата обращения: 10.08.2018).
2. Яндекс. Поиск Яндекса с инженерной точки зрения. Лекция в Яндексе // Хабр. 2016. URL: https://habr.com/company/yandex/blog/312716/(дата обращения: 10.08.2018).
3. Wikipedia contributors. EOSDIS // Wikipedia, The Free Encyclopedia. 2017. URL: https:// en.wikipedia.org/w/index.php?title=EOSDIS&oldid=808578344 (дата обращения: 10.08.2018).
4. Wikipedia contributors. Online transaction processing // Wikipedia, The Free Encyclopedia. 2018. URL: https://en.wikipedia.org/w/index.php?title=Online_transaction_processing&oldid=846851521(дата обращения: 10.08.2018).
5. Xu Y., Kostamaa P., Zhou X., Chen L. Handling data skew in parallel joins in shared-nothing systems // ACM SIGMOD international Conference on Management of Data. Canada. 2008. pp. 1043-1052.
6. Лепихов А.В. Параллельная обработка запросов в СУБД для кластерных вычислительных систем, Отчет в рамках гранта МК-3535.2009.9.
7. Wikipedia contributors. Online analytical processing // Wikipedia, The Free Encyclopedia. 2018.
URL: https://en.wikipedia.org/w/index.php?title=Online_analytical_processing&oldid=850545800
(дата обращения: 08.10.2018).
8. Microsoft. Parallel Query Processing // Resources and Tools for IT Professionals | TechNet. 2018.
URL: https://technet.microsoft.com/en-us/library/ms178065(v=sql.105).aspx(дата обращения:
05.04.2018).
9. Lenovo. System x3950 X6 Rack Server // Официальный сайт Lenovo в России. 2017. URL: https:/ /www3.lenovo.com/ru/ru/data-center/servers/mission-critical/System-x3950-X6/p/WMD00000002(дата обращения: 15.07.2018).
10. Lenovo System x3950 X6 // TPC-H Result Highlights. 2016. URL: http://www.tpc.org/3321(дата обращения: 10.08.2018).
11. Transaction Processing Performance Council (TPC). TPC Benchmark H Standard Specification Revision 2.17.3 // TPC. 2017. URL: http://www.tpc.org/tpc_documents_current_versions/pdf/tpc- h_v2.17.3.pdf(дата обращения: 10.10.2017).
12. Oracle Exadata Database Machine X7 // Oracle Россия и СНГ. 2018. URL: https://www.oracle.com/ ru/engineered-systems/exadata/database-machine-x7/index.html (дата обращения: 10.08.2018).
13. Benchmarking Postgres-XL // 2ndQuadrant. 2015. URL: https://blog.2ndquadrant.com/
benchmarking-postgres-xl/ (дата обращения: 23.04.2018).
14. Российская отрасль СУБД продвигается на «слонах» // CONNECT, № 5-6, 2017. С. 34-38.
15. Oracle. The MySQL Plugin API // MySQL Documentation. 2018. URL: https://dev.mysql.com/doc/ refman/5.7/en/plugin-api.html (дата обращения: 09.04.2018).
16. Абрамов Е.В. Параллельная СУБД Clusterix. Разработка прототипа и его натурное исследование // Вестник КГТУ им. А.Н. Туполева., № 2, 2006. С. 50-55.
17. Классен Р.К. Повышение эффективности параллельной СУБД консервативного типа на кластерной платформе с многоядерными узлами // Вестник КГТУ им. А.Н.Туполева, № 1, 2015. С.115-121.
18. Райхлин В.А., Минязев Р.Ш. Мультикластеризация распределенных СУБД консервативного типа // Нелинейный мир, Т. 9, № 8, 2011. С. 473-481.
19. Oracle Corporation. MySQL Router 8.0 // MySQL Documentation. 2018. URL: https://
dev.mysql.com/doc/mysql-router/8.0/en/ (дата обращения: 11.08.2018).
20. Rauhe H. Finding the Right Processor for the Job Co-Processors in a DBMS, Ilmenau University of Technology, Ilmenau, Dissertation urn:nbn:de:gbv:ilm1-2014000240, 2014.
21. Bres S. Efficient Query Processing in Co-Processor-accelerated Databases, University of Magdeburg, Magdeburg, Dissertation 2015.
22. Load Balancing Methods for Every Application // Peplink SD-WAN. Protecting Business Continuity. 2018. URL: https://www.peplink.com/technology/load-balancing-algorithms/(дата обращения: 11.08.2018).
23. TOP500 // TOP500 Supercomputer Sites. 2018. URL: https://www.top500.org/(дата обращения: 09.03.2018).
24. ASCI Red | TOP500 Supercomputer Sites // TOP500 Supercomputer Sites. URL: https:// www.top500.org/system/168753(дата обращения: 09.03.2018).
25. ASCI Red // Википедия. 2013-2017. URL: http://ru.wikipedia.org/?oldid=87421680
26. GeForce 700 series // Википедия. 2012-2018. URL: https://en.wikipedia.org/wiki/
GeForce_700_series#GeForce_700_(7xx)_series (дата обращения: 09.03.2018).
27. Sunway TaihuLight - Sunway MPP, Sunway SW26010 260C 1.45GHz, Sunway | TOP500 Supercomputer Sites // TOP500 Supercomputer Sites. URL: https://www.top500.org/system/178764(дата обращения: 09.03.2018).
28. Amazon. Amazon Web Services 2018. URL: https://aws.amazon.com(дата обращения: 30.04.2018).
29. Лаборатория Параллельных Информационных Технологий, НИВЦ МГУ. Задачи для суперкомпьютеров, суперкомпьютерные приложения // PARALLEL.RU- Информационно-аналитический центр по параллельным вычислениям. 2018. URL: https://parallel.ru/research/ apps.html (дата обращения: 22.03.2018).
30. Большие данные // Википедия. 2011-2017. URL: http://ru.wikipedia.org/?oldid=89762670(дата обращения: 09.03.2018).
31. Turck M. Firing on All Cylinders: The 2017 Big Data Landscape // Matt Turck. 2017. URL: http:// mattturck.com/bigdata2017/(дата обращения: 09.03.2018).
32. Paradigm4: Creators of SciDB a computational DBMS // Paradigm4. 2018. URL: https:// www.paradigm4.com/(дата обращения: 25.02.2018).
33. In-Memory Database VoltDB // VoltDB. 2018. URL: https://www.voltdb.com/(дата обращения: 25.02.2018).
34. Postgres-XL | Open Source Scalable SQL Database Cluster // Postgres-XL. 2018. URL: https:// www.postgres-xl.org/(дата обращения: 25.02.2018).
35. SQL Server pricing // Microsoft. 2018. URL: https://www.microsoft.com/en-US/sql-server/sql-server- 2017-pricing(дата обращения: 04.02.2018).
36. Hellerstein J.M., Stonebraker M., Hamilton J. Architecture of a Database System // Foundations and Trends in Databases. 2007. Vol. 1. No. 2. pp. 141-259.
37. Stonebraker M. The case for shared nothing // Database Engineering Bulletin, Vol. 9, No. 1, 1986. pp. 4-9.
38. Соколинский Л.Б. Методы организации параллельных систем баз данных на вычислительных системах с массовым параллелизмом, Челябинский государственный университет, Челябинск, Диссертация 2003.
39. Copeland G.P., Keller T.A. Comparison Of High-Availability Media Recovery Techniques // Proceedings of the 1989 ACM SIGMOD International Conference on Management of Data. Portland, Oregon. 1989. pp. 98-109.
40. Sokolinsky L., Axenov O., Gutova S. Omega: The Highly Parallel Database System Project // Proceedings of the First East-European Symposium on Advances in Database and Information Systems (ADBIS'97), St.-Petersburg, Vol. 2, September 2-5 1997. pp. 88-90.
41. Rahm E. A Framework for Workload Allocation in Distributed Transaction Processing Systems // Journal of Systems and Software, Vol. 18, 1992. pp. 171-190.
42. Григорьев А.Ю., Плутенко А.Д., Плужников Л.В., Ермаков Е.Ю., Цвященко Е.В., Пролетарская А.В. Теория и практика анализа параллельных систем баз данных. Владивосток: Дальнаука, 2015. 336 с.
43. Российская СУБД Postgres Pro // Postgres Professional. 2018. URL: https://postgrespro.ru/products/ postgrespro (дата обращения: 03.05.2018).
44. DB-Engines Ranking - popularity ranking of database management systems // DB-Engines. 2018. URL: https://db-engines.com/en/ranking(дата обращения: 29.03.2018).
45. PostgreSQL 10 Released // PostgreSQL. 2017. URL: https://www.postgresql.org/about/news/1786/(дата обращения: 06.02.2018).
46. Parallel Execution with Oracle Database 18с Fundamentals // ORACLE WHITE PAPER. 2018. URL: http://www.oracle.com/technetwork/database/bi-datawarehousing/twp-parallel-execution- fundamental s-133639.pdf
47. Oracle. Oracle Technology Global Price List 2018. URL: http://www.oracle.com/us/corporate/pricing/ technology-price-list-070617.pdf (дата обращения: 06.04.2018).
48. Chapter 21 MySQL NDB Cluster 7.5 and NDB Cluster 7.6 2018. URL: https://dev.mysql.com/doc/ refman/5.7/en/mysql-cluster.html (дата обращения: 06.03.2018).
49. Pgpool-II // PostgreSQL wiki. 2018. URL: https://wiki.postgresql.org/index.php?title=Pgpool- II&oldid=20968(дата обращения: 12.04.2018).
50. Slony // PostgreSQL wiki. 2018. URL: https://wiki.postgresql.org/
index.php?title=Slony&oldid=28088 (дата обращения: 12.04.2018).
51. 2ndQuadrant. PostgreSQL vs MySQL 2018. URL: https://www.2ndquadrant.com/en/postgresql/ postgresql-vs-mysql/ (дата обращения: 11.04.2018).
52. INTERNATIONAL STANDARD. ISO/IEC 9075-1 Information technology - Database languages - SQL - Part 1: Framework (SQL/Framework), 2008.
53. Gray , Reuter A. Transaction Processing: Concepts and Techniques. 1st ed. Morgan Kaufmann Publishers Inc., 1992.
54. Postgres-XL // 2ndQuadrant. 2018. URL: https://www.2ndquadrant.com/en/resources/postgres-xl/(дата обращения: 16.04.2018).
55. Sharp M. Scaling PostgreSQL on Postgres-XL // PGConf.ru. 2015. URL: https://pgconf.ru/ media2015c/sharp.pdf (дата обращения: 16.04.2018).
56. Amazon EC2 Instance Types // Amazon Web Services (AWS). 2018. URL: https://aws.amazon.com/ ec2/instance-types/?nc1=h_ls (дата обращения: 23.04.2018).
57. Пан К.С. Методы внедрения фрагментного параллелизма в последовательную СУБД с открытым исходным кодом, Южно-уральский государственный университет, Челябинск, Диссертация 2013.
58. Соколинский Л.Б., Цымблер М.Л. Проект создания параллельной СУБД Омега на базе суперкомпьютера МВС-100/1000 // Телематика'98: Тез. докл. Всероссийск. науч.-метод. конф. (7-10 июня 1998 г., Санкт-Петербург). -СПб: Вузтелекомцентр. 1998. С. 154-155.
59. Соколинский Л.Б. Организация параллельного выполнения запросов в многопроцессорной машине баз данных с иерархической архитектурой // Программирование, № 6, 2001. С. 13-29.
60. СУБД Postgres Pro // Официальный сайт оператора единого реестра российских программ для электронных вычислительных машин и баз данных в информационно-телекоммуникационной сети "Интернет". 2016. URL: https://reestr.minsvyaz.ru/reestr/65273/(дата обращения: 06.05.2018).
61. Российская СУБД Postgres Pro // Компания Postgres Professional. 2018. URL: https:// postgrespro.ru/products/postgrespro(дата обращения: 06.05.2018).
62. Сопоставление возможностей PostgreSQL и PostgresPro версии 9.5 // Компания Postgres
Professional. 2018. URL: https://postgrespro.ru/products/postgrespro/9.5/comparison (дата
обращения: 06.05.2018).
63. Raikhlin V.A. Simulation of Distributed Database Machines // Programming and Computer Software, Vol. 22, No. 2, 1996. pp. 68-74.
64. Martin J. Computer database organization. 2nd ed. New Jersey 07632: Prentice-Hall, Inc., Englewood Cliffs, 1977. 713 pp.
65. MapReduce // Википедия. 2018. URL: https://ru.wikipedia.org/?oldid=94040380(дата обращения: 18.07.2018).
66. Shankland S. Google spotlights data center inner workings // CNet. 2008. URL: https://www.cnet.com/ news/google-spotlights-data-center-inner-workings/ (дата обращения: 2018.07.2018).
67. Hadoop // Википедия. 2018. URL: https://ru.wikipedia.org/?oldid=95122995(дата обращения: 17.07.2018).
68. Shvachko K. Apache Hadoop. The Scalability Update // File Systems, Vol. 36, No. 3, 2011. pp. 7-13.
69. Apache Spark // Википедия. 2018. URL: https://ru.wikipedia.org/?oldid= 94436956 (дата обращения: 09.08.2018).
70. Apache Spark - Unified Analytics Engine for Big Data // Apache Spark. 2018. URL: https:// spark.apache.org/(дата обращения: 26.10.2018).
71. Oracle. MySQL // MySQL. 2017. URL: https://www.mysql.com/(дата обращения: 19.05.2017).
72. Charvet F., Pande A. Database Performance Study 2003. URL: https://mis.umsl.edu/files/pdfs/ TuningPaperV5.pdf (дата обращения: 13.07.2018).
73. Oracle Corporation and/or its affiliates. The MyISAM Storage Engine // MySQL Documentation.
2018. URL: https://dev.mysql.com/doc/refman/5.6/en/myisam-storage-engine.html (дата
обращения: 13.07.2018).
74. Oracle Corporation and/or its affiliates. The InnoDB Storage Engine // MySQL Documentation. 2018.
URL: https://dev.mysql.com/doc/refman/5.7/en/innodb-storage-engine.html (дата обращения:
13.07.2018).
75. Oracle Corporation and/or its affiliates. Table Locking Issues // MySQL Documentation. 2018. URL: https://dev.mysql.com/doc/refman/5.6/en/table-locking.html(дата обращения: 13.07.2018).
76. Oracle. MySQL 5.7 Reference Manual. Buffer Pool // MySQL Documentation. 2017. URL: https:// dev.mysql.com/doc/refman/5.7/en/innodb-buffer-pool.html (дата обращения: 24.03.2017).
77. Oracle Corporation and/or its affiliates. Server Option, System Variable, and Status Variable Reference // MySQL Documentation. 2018. URL: https://dev.mysql.com/doc/refman/5.7/en/server-option- variable-reference.html(дата обращения: 13.07.2018).
78. Oracle Corporation and/or its affiliates. Using Option Files // MySQL Documentation. 2018. URL: https://dev.mysql.com/doc/refman/5.7/en/option-files.html(дата обращения: 13.07.2018).
79. Райхлин В.А. Конструктивное моделирование систем. Казань: Изд-во «Фан» («Наука»), 2005.
80. Райхлин В.А., Вершини И.С., Минязев Р.Ш., Гибадуллин Р.Ф. Конструктивное моделирование систем информатики. Казань: Изд-во «Фан» («Наука»), 2016. 312 с.
81. Никтин Е.П. Объяснение - функция науки. Москва: Наука, 1970.
82. Конторов Д.С. Внимание - системотехника. Москва: Радио и связь, 1993.
83. Хакинг Ян. Представление и вмешательство. Начальные вопросы философии естественных наук. Москва: Логос, 1998.
84. Анохин П.К. Принципиальные вопросы общей теории функциональных систем // В кн.: Принципы системной организации функций / ред. Анохин П.К. Москва: Наука, 1973. С. 5-61.
85. Хакен Г. Основные понятия синергетики //Синергетическая парадигма. М. 2000.
86. Шрейдер Ю.А., Шаров А.А. Системы и модели. М.: Радио и связь, 1982.
87. Дружинин В.В., Конторов Д.С. Проблемы системологии (проблемы теории сложных систем). М.: Сов. Радио, 1976. 296 с.
88. Райхлин В.А., Абрамов Е.В. К теории моделей синтеза кластеров баз данных // Вестник КГТУ им. А.Н. Туполева, № 1, 2004. С. 44-49.
89. Райхлин В.А., Классен Р.К. Сравнительно недорогие гибридные технологии консервативных СУБД больших объемов // Информационные технологии и вычислительные системы, Т. 68, № 1, 2018. С. 46-59.
90. Mono Project. Cross platform, open source.NET framework // Mono. 2018. URL: https://www.mono- project.com/(дата обращения: 12.07.2018).
91. Минязев Р.Ш. Распределение потока запросов в параллельных СУБД на платформе вычислительных кластеров // Нелинейный мир, Т. 10, № 3, 2012. С. 173-179.
92. GUID // Википедия. 2018. URL: https://ru.wikipedia.org/?oldid=92011990(дата обращения: 25.07.2018).
93. A Universally Unique IDentifier (UUID) URN Namespace // Internet Engineering Task Force. 2005. URL: http://www.ietf.org/rfc/rfc4122.txt(дата обращения: 25.07.2018).
94. Классен Р.К. Clusterix-N Wiki // Bitbucket. 2018. URL: https://bitbucket.org/rozh/clusterixn/wiki/ Home (дата обращения: 22.12.2018).
95. Райхлин В.А., Классен Р.К. Моделирование процессов балансировки нагрузки в распределенных СУБД, использующих ресурсы сети RUNNet // Научный вестник НГТУ, № 4, 2015. С. 90-100.
96. Райхлин В.А., Минязев Р.Ш., Классен Р.К., Садовин А.В. Анализ возможных путей повышения эффективности параллельных СУБД консервативного типа на платформе вычислительных кластеров // Материалы Международной конференции и молодежной школы «Информационные технологии и нанотехнологии» (Конференция ИТНТ-2016). Самара. 2016. С. 965-970.
97. Райхлин В.А., Минязев Р.Ш., Классен Р.К. Эффективность консервативных СУБД больших объемов на кластерной платформе // Кибернетика и программирование, № 5, Ноябрь 2018. С. 44-62.
98. Классен Р.К. Ускорение операций хеширования с применением графических ускорителей // Вестник КГТУ им. А.Н.Туполева, № 1, 2018. С. 134-141.
99. Karwin Software Solutions LLC. Load Data Fast! // SlideShare. 2017. URL: https:// www.slideshare.net/billkarwin/load-data-fast(дата обращения: 15.05.2018).
100. Классен Р.К. Разработка и исследование консервативной СУБД Clusterix-N класса «BigData» на платформе GPU-кластера // Системы компьютерной математики и их приложения, № 19, 2018. С. 163-171.
101. Oracle Corporation and/or its affiliates. MySQL 8.0 Release Notes // MySQL Documentation. 2019. URL: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/(дата обращения: 25.01.2019).
102. Clusterix-N [Электронный ресурс] [2018]. URL: https://bitbucket.org/rozh/clusterixn
103. Классен Р.К. Программа региональной балансировки нагрузки к базе данных консервативного типа на кластерной платформе «PerformSys». Свидетельство о государственной регистрации программы для ЭВМ №2017611785 от 09.02.2017.
104. Классен Р.К. Использование мощностей кластерной платформы с многоядерными узлами для работы с базой данных консервативного типа // Международной молодежной научной конференции XXII Туполевские чтения (школа молодых ученых). Казань. 2015. Т. 4. С. 263¬269.
105. Дубовцев А.В. Microsoft.NETв подлиннике. БХВ-Петербург, 2004. 704 с.
106. Паркер Т., Сиян К. TCP/IP для профессионалов. Спб.: Питер, 2004. 859 с.


Работу высылаем на протяжении 30 минут после оплаты.




©2024 Cервис помощи студентам в выполнении работ