Обнаружение ресурсоемких запросов к базам данных на основе применения самоорганизующихся карт и нечеткого вывода тема диссертации и автореферата по ВАК РФ 05.13.01, кандидат наук Алгазали Салах Махди Мадлол

  • Алгазали Салах Махди Мадлол
  • кандидат науккандидат наук
  • 2021, ФГАОУ ВО «Белгородский государственный национальный исследовательский университет»
  • Специальность ВАК РФ05.13.01
  • Количество страниц 143
Алгазали Салах Махди Мадлол. Обнаружение ресурсоемких запросов к базам данных на основе применения самоорганизующихся карт и нечеткого вывода: дис. кандидат наук: 05.13.01 - Системный анализ, управление и обработка информации (по отраслям). ФГАОУ ВО «Белгородский государственный национальный исследовательский университет». 2021. 143 с.

Оглавление диссертации кандидат наук Алгазали Салах Махди Мадлол

ПЕРЕЧЕНЬ УСЛОВНЫХ СОКРАЩЕНИЙ

ВВЕДЕНИЕ

ГЛАВА 1. АНАЛИЗ СОСТОЯНИЯ ИССЛЕДОВАНИЙ В ОБЛАСТИ ОБНАРУЖЕНИЯ РЕСУРСОЕМКИХ ЗАПРОСОВ К БАЗАМ ДАННЫХ

1.1. Общая характеристика ресурсоемких запросов, причин и факторов их возникновения

1.2. Анализ методов администрирования СУБД и корректировки

запросов к базам данных. Постановка задач исследования

Выводы по главе

ГЛАВА 2. РАЗРАБОТКА И ИССЛЕДОВАНИЕ СРЕДСТВ КЛАСТЕРИЗАЦИИ ЗАПРОСОВ К БАЗАМ ДАННЫХ

2.1. Обоснование состава параметров, учитываемых при кластеризации запросов

2.2. Выбор метода кластеризации для обнаружения ресурсоемких запросов к базам данных

2.3. Разработка метода обнаружения ресурсоемких запросов к базам

данных на основе нейросетевой кластеризации

Выводы по главе

ГЛАВА 3. РАЗРАБОТКА И ИССЛЕДОВАНИЕ СРЕДСТВ ОБНАРУЖЕНИЯ РЕСУРСОЕМКИХ ЗАПРОСОВ К БАЗАМ ДАННЫХ

3.1. Разработка алгоритма обучения нейронов самоорганизующейся карты для кластеризации запросов к базам данных

3.2. Разработка метода поиска рекомендуемого значения радиуса топологической окрестности активных нейронов

3.3. Разработка метода разграничения кластеров самоорганизующейся карты на основе применения нечеткого вывода

3.4. Экспериментальные исследования по оценке корректности

обнаружения ресурсоемких запросов

Выводы по главе

ЗАКЛЮЧЕНИЕ

СПИСОК ЛИТЕРАТУРЫ

ПРИЛОЖЕНИЕ А Акты внедрения результатов диссертаций

ПРИЛОЖЕНИЕ Б Свидетельство о государственной регистрации программы

для ЭВМ

ПРИЛОЖЕНИЕ В Листинг программы обнаружения ресурсоемких запросов к базам данных на основе нейросетевой кластеризации

ПЕРЕЧЕНЬ УСЛОВНЫХ СОКРАЩЕНИЙ

СУБД - система управления базой данных

ЭВМ - электронная вычислительная машина

AdSOM (Adaptive Self-Organization Map)

AP

(affinity propagation)

алгоритм адаптивной самоорганизующейся карты

- алгоритм аффинной кластеризации

AWR (Advanced Workload Repository)

расширенное хранилище рабочей нагрузки

CPU

(Central Processing Unit)

процессорное устройство

DBA

(Data Base Administrator)

DBSCAN

(Density-Based Spatial Clustering of Applications with Noise) DCL

(Data Control Language)

- администратор баз данных

пространственная кластеризация в условиях шума

команды настроек доступа к данным

DDL - команды определения структуры данных

(Data Definition

Language)

DML - команды манипулирования данными

(Data Manipulation

Language)

FOREL - алгоритм «Формальный элемент»

(FORmal ELement)

MDS - многомерное шкалирование

(Multidimensional

Scaling)

MDW - управляемое хранилище данных

(Management Data

Warehouse)

ORM - объектно-реляционное отображение

(Object Relational

Mapping)

PCA - метод главных компонент

(Principal Component

Analysis)

SNE

(Stochastic Neighbor Embedding)

- алгоритм стохастического вложения с учётом параметра соседства

SOM

(Self-Organization Map)

- самоорганизующаяся карта

SQL - язык структурированных запросов

(Structured Query Language)

UMAP

(Uniform Manifold Approximation and Projection)

XML - расширяемый язык разметки

(eXtensible Markup Language)

- алгоритм приближения и проекции равномерного многообразия

Рекомендованный список диссертаций по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК

Введение диссертации (часть автореферата) на тему «Обнаружение ресурсоемких запросов к базам данных на основе применения самоорганизующихся карт и нечеткого вывода»

ВВЕДЕНИЕ

Актуальность темы. В настоящее время активно используются распределенные программные системы для хранения и обработки информации, касающейся экономики, производства, предоставления услуг, социальной сферы, культуры, образования и личной жизни. Сотни миллионов пользователей обслуживаются банковскими сетями, справочно-информационными интернет-порталами государственных услуг, системами распределенной торговли, резервирования билетов, дистанционного образования, другими электронными сервисами. Информация об объектах предметной области в этих системах размещается в базах данных, к которым нужно обращаться для выполнения требуемой операции. Стремительный рост объёмов хранимых и обрабатываемых данных, возрастающее число пользователей, расширение круга решаемых задач и повышение сложности алгоритмов обуславливают снижение эффективности распределенных информационных систем. На качество и своевременность выполнения транзакций в таких системах негативно влияют следующие факторы [16; 17; 33; 38; 40; 41; 59; 70; 82; 119]:

1) нехватка аппаратных ресурсов, высокая загрузка процессорных устройств, дефицит дискового пространства, недостаточная пропускная способность каналов передачи информации;

2) ошибки, допущенные при проектировании архитектуры систем, структуры баз данных, формализации бизнес-процессов и создании алгоритмов;

3) несовершенная конфигурация систем управления базами данных (СУБД) и системного окружения, неадекватные объемы памяти для обработки данных и системных областей, некорректные настройки системных параметров и параметров утилит;

4) наличие «проблемных» запросов, выполняемых намного дольше, чем это предусматривалось при разработке систем, неэффективность планов исполнения запросов.

Влияние указанных факторов может проявляться в виде «зависания» форм конечных приложений, увеличения длительности исполнения фоновых задач, скриптов или программ, работающих с базами данных. Нередко наблюдаются ошибки времени исполнения запросов, сигналы о появлении которых сообщаются через графический интерфейс конечных приложений или консоль СУБД. Снижение корректности и своевременности выполнения запросов к базам данных может стать причиной значимых для пользователей финансовых потерь, существенных негативных последствий для бизнеса.

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

Поиск и преобразование ресурсоёмких запросов проводится специалистами по администрированию баз данных (Data Base Administrator, DBA) на основании информации, получаемой со стороны клиентов [116]. Постепенное снижение производительности распределенных клиентских систем требует принятия мер проактивной оптимизации [5; 8; 9; 116]. Специалисты DBA имеют доступ к настройкам программного и аппаратного обеспечения сервера баз данных, специализированной агрегированной статистической информации об исполнении запросов. По результатам анализа такой информации администраторы баз данных выполняют действия по корректировке ресурсоемких запросов либо вручную, либо с применением специальных программных средств - оптимизаторов запросов.

Формирование запросов к базам данных осуществляется на основе применения инструментария языка SQL (Structured Query Language) [196]. Методы поиска и классификации проблемных запросов, которые используются в системных утилитах, характеризуются недостаточно корректным обнаружением ресурсоемких SQL-операторов. Применение этих программных средств зачастую приводит к не выявлениям или пропускам поступающих к базам данных ресурсоемких запросов. Причинами недостаточных возможностей утилит является использование ими ограниченного количества характеристик ресурсоемкости запросов, выполнение анализа на основе применения несовершенных алгоритмов, использующих простое ранжирование обрабатываемых экземпляров запросов. Кроме того, к недостаткам вышеуказанных утилит можно отнести их функциональную избыточность и неоправданно высокую стоимость.

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

Обеспечению эффективного функционирования баз данных посвящены работы М.Р. Когаловского [45; 46], С.Д. Кузнецова [51 - 53], Б.Я. Советова [108], V. Andersen [12], A. Berger [19], T. Connolly [47], C. Date [27], J. Harrington [117], P. Laurie [57], R.J. Muller [67], М. Nagao [68], P. Rob [104], T. Teory [112], J. Ulman [23, 113] и многих других отечественных и зарубежных исследователей, а также разработчиков аппаратных и программных решений. Однако анализ научно-технической литературы

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

Объектом исследования являются процессы администрирования баз данных распределенных программных систем, функционирующих для хранения и обработки информации.

Предмет исследования - методы и алгоритмы обнаружения ресурсоемких запросов к базам данных.

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

Для достижения поставленной цели сформулированы и решены следующие задачи исследования:

1) анализ процесса обнаружения ресурсоемких запросов к базам данных для обоснования предложений по его совершенствованию;

2) разработка метода и алгоритма обнаружения ресурсоемких запросов к базам данных на основе нейросетевой кластеризации;

3) создание методов и алгоритмов обучения нейронов самоорганизующейся карты и разграничения ее кластеров на основе нечеткого вывода;

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

Методы исследования. В диссертационной работе использованы методы теории вероятности и математической статистики, кластерного анализа, теоретический аппарат нейронных сетей и нечеткой логики,

специализированные программные средства для выполнения экспериментальных исследований по оцениванию характеристик запросов к базам данных.

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

В работе получены результаты, обладающие научной новизной:

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

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

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

Практическая значимость результатов исследования состоит в их применении при создании программных средств, позволяющих повысить корректность обнаружения ресурсоемких запросов к базам данных. В рамках диссертации получено свидетельство о государственной регистрации программ ЭВМ № 2018664795 «Модифицированная самоорганизующаяся нейронная сеть на основе тензорных вычислений» (TZ-SOM), которое представлено в приложении Б.

Результаты исследования внедрены на предприятии ООО «СКБ Информационные технологии» и используются в учебном процессе Белгородского государственного национального исследовательского университета. Соответствующие акты внедрения представлены в приложении А.

Положения, выносимые на защиту:

1. Разработанный метод обнаружения ресурсоемких запросов к базам данных позволяет повысить вероятность корректного обнаружения ресурсоемких запросов и снизить вероятность их ошибочного обнаружения.

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

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

Соответствие диссертации паспорту научной специальности. Диссертационная работа соответствует паспорту специальности 05.13.01 по следующим областям исследования:

п. 3 «Разработка критериев и моделей описания и оценки эффективности решения задач системного анализа, оптимизации, управления, принятия решений и обработки информации»;

п. 4 «Разработка методов и алгоритмов решения задач системного анализа, оптимизации, управления, принятия решений и обработки информации».

Апробация результатов диссертации. Материалы исследования докладывались и обсуждались на международной научно-практической конференции «Информационное обеспечение научно-технического прогресса: анализ проблем и поиск решений» (г. Киров, 2021); международной научно-технической конференции «Технологии разработки информационных систем» (г. Таганрог, 2019); международной научно-практической конференции «Применение и развитие нейросетевого моделирования для решения фундаментальных задач в науке и технике» (г. Новочеркасск, 2019); международной научно-практической конференции «Фундаментальные основы, теория, методы и средства измерений, контроля и диагностики» (г. Новочеркасск, 2018); региональной научно-технической конференции студентов, аспирантов и молодых ученых вузов Ростовской области «Студенческая научная весна - 2017» (г. Новочеркасск, 2017).

Связь работы с научными направлениями, программами и проектами. Тематика работы соответствует приоритетному направлению развития науки, технологий и техники в Российской Федерации «Информационно-телекоммуникационные системы» (утверждено Указом Президента Российской Федерации от 07.07.2011 № 899). Работа связана с проведением исследований в рамках деятельности научно-образовательного цента мирового уровня «Инновационные решения в АПК», утвержденной распоряжением Губернатора Белгородской области от 13.05.2020 № 283-р.

Публикации. По теме диссертации опубликовано 11 работ [2 - 10; 116; 123], в числе которых 4 статьи в рецензируемых изданиях, рекомендованных ВАК РФ, 1 статья в рецензируемом периодическом издании, 5 работ в материалах научных конференций. Издана 1 научная статья в журнале, индексируемом в международной базе Scopus.

Личный вклад соискателя. Все основные научные результаты исследования получены автором самостоятельно или при его непосредственном участии.

Структура и объем диссертации. Диссертация состоит из введения, трех глав, заключения, списка литературы и трех приложений. Работа изложена на 143 страницах машинописного текста, включающего 7 таблиц, 19 рисунков и список литературы из 198 наименований.

ГЛАВА 1. АНАЛИЗ СОСТОЯНИЯ ИССЛЕДОВАНИЙ В ОБЛАСТИ ОБНАРУЖЕНИЯ РЕСУРСОЕМКИХ ЗАПРОСОВ К БАЗАМ ДАННЫХ

1.1. Общая характеристика ресурсоемких запросов, причин и факторов их возникновения

Запросом к базе данных является некоторая команда, требующая исполнения определенных действий (операций) с данными. SQL-запросы предназначены, например, для манипулирования данными (команды Data Manipulation Language, DML), определения структуры данных (команды Data Definition Language, DDL), осуществления настроек доступа к данным (команды Data Control Language, DCL), установки параметров СУБД.

К одной из самых распространенных разновидностей команд DML относится команда SELECT. Это наиболее ресурсоёмкая команда, исполнение которой связано с просмотром, отбором, и обработкой информации. С другой стороны, именно SELECT-запрос является наиболее часто используемой командой в активно работающих программных системах. С помощью этой команды просто демонстрируется содержание базы данных, а выполняются различные виды обработки и преобразования больших объёмов информации. С помощью SQL-запроса SELECT программист указывает, какие именно данные требуется извлечь из базы и передать в программную систему. При этом способ исполнения этой команды формируется и выбирается СУБД при обработке текста запроса. Чем сложнее конструкция запроса, тем он больше допускает вариантов или планов исполнения, различных по скорости достижения результата, но одинаковых по итоговому набору данных. Не менее ресурсоёмкой, в ряде случаев, может оказаться и DML-команда UPDATE, позволяющей осуществлять просмотр таблиц для дальнейших согласованных изменений в них. Большие размеры и сложная структура таблиц могут стать причиной

медленного исполнения UPDATE-запросов и значительных ресурсных затрат.

В рамках системного анализа SQL-запрос рассматривается как объект, представленный следующими взаимосвязанными компонентами (рисунок 1):

1) некоторой одиночной командой к системе управления базой данных, существующей в рамках программы или программной системы в совокупности с набором параметров, доступных для редактирования как во время разработки, так и во время выполнения программы;

2) планом исполнения, генерируемым специальным компонентом СУБД (оптимизатором запросов) на основании текста запроса, схемы базы данных, статистической информации о распределении данных в таблицах, доступных индексов, набора директив оптимизатора относительно способов доступа и проведения операций соединения данных;

3) набором реляционных операторов, соответствующих плану исполнения и непосредственно воздействующих на таблицы базы данных;

4) набором статистических данных о процессе исполнения запроса, которые формируются системой управления базой данных и хранятся в её внутренних таблицах в течение определенного срока;

5) набором данных, возвращаемых SQL-запросом в программу.

Рисунок 1.1 - Компоненты SQL-запроса

Размещение отдельных компонентов и исполнение операторов запроса происходит в программной среде, в клиент-серверной среде СУБД и баз данных, которые, в свою очередь, функционируют под управлением операционных систем в рамках локальной или глобальной сети на различных аппаратных ресурсах.

На обработку ресурсоемких (проблемных) запросов к базе данных сервером затрачивается недопустимое количество ресурсов времени, CPU, дисков и памяти. Для большинства распределенных клиентских систем временной промежуток проблемного запроса колеблется в диапазоне от 1 до 10 секунд. Но для ряда информационных систем это время может сократиться до десятых и даже сотых долей секунды. Ресурсоемкими могут быть как сложные и комплексные SQL-операторы, включающие десятки таблиц и операций (функций), так и достаточно простые запросы, сканирующие большие диапазоны данных. Разновидностью ресурсоёмких запросов можно считать критичные быстрые запросы, выполняемые за единицы микросекунд, но общее число исполнений которых ведёт к резкому замедлению работы системы.

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

К ресурсоемким запросам можно отнести тяжелые запросы, а также медленные запросы, большую часть времени находящиеся в режиме ожидания. Тяжёлый запрос выполняется в течение длительного времени и требует для своей реализации значительные ресурсы сервера базы данных (памяти, дисков, процессора, каналов ввод-вывода). По структуре тяжелые запросы могут быть простыми, требующими обработки только одной

таблицы, но их исполнение сопровождается просмотром большого числа строк из базы данных, например, от 104 до 105 для запросов, содержащих условия WHERE, от 103 до 104 для запросов с предикатами LIKE, NOT и NOT IN в WHERE. С другой стороны, тяжелые запросы могут быть сложными, иметь большую вложенность подзапросов и соединения с вложенными подзапросами, обращаться к нескольким таблицам и требовать просмотра от 104 до 106 строк, создавая при этом большие временные таблицы. Примерами таких сложных запросов являются запросы на резервное копирование, перестройку индексов, проверку физической целостности базы данных и др. Объединяет различные тяжелые запросы то, что при их выполнении количество обращений к диску со стороны сервера базы данных сравнимо с количеством просмотренных строк. При этом объём считанных и обработанных данных сравним с количеством данных в таблицах, с которыми производится работа. Нагрузка на сервер составляет десятки тысяч обращений общим объёмом в десятки мегабайт, что даже для высокопроизводительной является неприемлемым. В какой-то мере поскольку тяжелый запрос монополизирует доступ к таблицам баз данных. Повышенное потребление ресурсов не только влияет на время исполнения самого запроса, но и на время исполнения других запросов, обращающихся к тем же таблицам. Часть запросов в это время не может быть своевременно исполнена из-за ожиданий на блокировках.

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

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

Для обнаружения ресурсоемких запросов могут быть использованы следующие параметры:

- время, затраченное сервером базы данных, на исполнение запроса;

- процессорное время, т.е. время, затраченное процессором на исполнение команд запроса;

- время блокировок, т.е. время, потраченное сервером базы данных на ожидание ресурсов в связи с блокировками таблиц, дисковой активностью сервера БД, занятости сетевого интерфейса;

- количество просмотренных строк таблицы, т.е. количество строк, которое пришлось прочитать с диска в процессе обработки SQL-запроса;

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

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

- SQL-запросы добавления и обновления данных ожидают окончания обработки приоритетных поисковых запросов и освобождения от блокировки тех данных, которые необходимы для собственного исполнения;

- время исполнения поисковых запросов резко увеличивается из-за значительного увеличения числа конечных пользователей программной системы;

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

Во всех этих случаях признаком случайности является однократное повторение явления при сравнительно небольшом количестве обрабатываемых данных.

Причинами системных проблем падения скорости исполнения запросов являются:

- несовершенная модель базы данных или её конфигурации;

- неблагоприятное состояние среды исполнения;

- устаревание статистической информации о распределении данных;

- нуждающийся в доработке код SQL-скриптов.

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

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

1) рост объемов данных, который оказывает влияние на производительность программной системы;

2) превышение порога хранимых данных в таблицах баз данных, большое количество выбираемых данных, выполнение агрегатных функций,

для чего требуется включение в работу дисковой подсистемы и увеличения нагрузки на вычислительные устройства;

3) устаревание статистической информации о распределении данных и индексов в таблицах баз данных;

4) длительное время разбора (компиляции) запроса при первом вызове и последующих перекомпиляциях;

5) длительное ожидание исполнения запросов из-за блокировки данных;

6) характеристики процессорного и сетевого оборудования не соответствуют его загрузке при исполнении запросов.

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

К появлению длительных по времени исполнения или затратных по потреблению ресурсов SQL-запросов может привести обновление статистической информации о распределении данных и индексов при

Похожие диссертационные работы по специальности «Системный анализ, управление и обработка информации (по отраслям)», 05.13.01 шифр ВАК

Список литературы диссертационного исследования кандидат наук Алгазали Салах Махди Мадлол, 2021 год

СПИСОК ЛИТЕРАТУРЫ

1. Агузумцян, Р.В. О применении интеллектуальных технологий обработки естественного языка и средств виртуальной реальности для поддержки принятия решений при подборе исполнителей проектов / Р.В. Агузумцян, А.С. Великанова, К.А. Польщиков, Е.В. Игитян, Р.В. Лихошерстов / Экономика. Информатика. - 2021. - № 48 (2). - С. 392404.

2. Алгазали, С.М.М. Идентификация неэффективных SQL-запросов в СУБД Oracle / С.М.М. Алгазали // Материалы региональной научно-технической конференции студентов, аспирантов и молодых ученых вузов Ростовской области «Студенческая научная весна - 2017». - Новочеркасск, 2017. - С. 355-356.

3. Алгазали, С.М.М. Кластеризация неэффективных SQL-запросов / С.М.М. Алгазали, А.В. Кузнецова // Материалы 19-й Международной молодежной научно-практической конференции «Фундаментальные основы, теория, методы и средства измерений, контроля и диагностики». -Новочеркасск, 2018. - С. 111-117.

4. Алгазали, С.М.М. Модификация алгоритма обучения самоорганизующейся нейронной сети на основе механизма регуляризации / С.М.М. Алгазали, А.В. Кузнецова, В.Г. Айвазов // Сб. науч. тр. международной научно-практической конференции «Применение и развитие нейросетевого моделирования для решения фундаментальных задач в науке и технике». - Новочеркасск, 2018. - С. 62-65.

5. Алгазали, С.М.М. Нейросетевые и вероятностные методы повышения эффективности средств администрирования СУБД / С.М.М. Алгазали, А.В. Кузнецова // Известия ТулГУ. Технические науки. -2019. - № 12. - С. 504-512.

6. Алгазали, С.М.М. О выявлении ресурсоемких запросов к базам данных / С.М.М. Алгазали, Е.А. Мощенко, И.К. Польщиков // Сборник

статей Международной научно-практической конференции «Информационное обеспечение научно-технического прогресса: анализ проблем и поиск решений». - Киров, 2021. - С. 20-21.

7. Алгазали, С.М.М. Повышение эффективности средств администрирования СУБД на основе нейросетевого и вероятностного подходов / С.М.М. Алгазали // Материалы IX международной научно-технической конференции «Технологии разработки информационных систем». - Т. 2. - Таганрог, 2019. - С. 84-90.

8. Алгазали, С.М.М. Особенности кластеризации SQL-запросов на основе механизма регуляризации / С.М.М. Алгазали, А.В. Кузнецова,

B.Г. Айвазов // Известия высших учебных заведений. Северо-Кавказский регион. Технические науки. - 2019. - № 4. - С. 31-38.

9. Алгазали, С.М.М. Совершенствование процесса поиска неэффективных SQL-запросов в СУБД Oracle [Электронный ресурс] /

C.М.М. Алгазали, В.Г. Айвазов, А.В. Кузнецова // Инженерный вестник Дона. - 2017. - № 4. - Режим доступа: http://www.ivdon.ru/uploads/article/pdf/ IVD_137_algazaH_aivazov_kuznetsova.pdf_8b7d755969.pdf (дата обращения: 08.09.2021).

10. Алгазали, С.М.М. Формирование модели SQL-запроса на основе статистических параметров производительности [Электронный ресурс] / С.М.М. Алгазали, В.Г. Айвазов, А.В. Кузнецова // Вестник молодёжной науки России. - 2019 - №3. - С. 31. - Режим доступа: https://www.youth-science.com/vypusk-3-2019 (дата обращения: 08.09.2021).

11. Аксенов С.В. Организация и использование нейронных сетей (методы и технологии) / С.В. Аксенов, В.Б. Новосельцев. - Томск: Изд-во НТЛ, 2006. - 128 с.

12. Андерсен, В. Базы данных Microsoft Access. Проблемы и решения / В. Андерсен. - Пер. с англ. - М.: ЭКОМ, 2001. - 384 с.

13. Андрушкевич, С.С. Метод кластеризации активных воздействий на элементы критической информационной инфраструктуры с использованием

самоорганизующейся карты Кохонена / С.С. Андрушкевич, П.В. Тимашов // Актуальные вопросы состояния и перспектив развития сложных технических систем военного назначения: IV Всероссийская научно-практическая конференция военного учебного центра Московского государственного технического университета имени Н.Э. Баумана: Сборник научно-методических трудов. - Москва, 2020. - С. 474-478.

14. Анисимова, Э.С. Самоорганизующиеся карты Кохонена в задачах кластеризации / Э.С. Анисимова // Актуальные проблемы гуманитарных и естественных наук. - 2014. - № 9. - С. 13-16.

15. Асатрян, Г.Т. Определение близких по внешнему виду моделей транспортных средств с использованием самоорганизующейся карты Кохонена / Г.Т. Асатрян, К.Л. Тассов // Аспирант и соискатель. - 2019. - № 2(110). - С. 131-139.

16. Ахмед, А.М.А. Математическое и программное обеспечение процессов многокритериального формирования однородных классов данных в распределенной СУБД на базе нейронной сети: автореферат диссертации на соискание ученой степени кандидата технических наук / А.М.А. Ахмед. -Воронеж, 2016. - 22 с.

17. Ачкасов, А.В. Теоретические основы многоальтернативных систем управления базами данных в условиях неполноты информации: автореферат диссертации на соискание ученой степени доктора технических наук / Ачкасов Александр Владимирович. - Воронеж, 2016. - 22 с.

18. Басараб, М. Интеллектуальные технологии на основе искусственных нейронных сетей / М. Басараб, Н. Коннова. - Москва: Московский государственный технический университет им. Н.Э. Баумана, 2017. - 56 с.

19. Бергер, А. Microsoft SQL Server 2005 Analysis Services. OLAP и многомерный анализ данных / А. Бергер. - СПб.: БХВ-Петербург, 2007. -909 с.

20. Бондарь, А. Microsoft SQL Server 2014 / А. Бондарь. - СПб: Издательство BHV-Петербург, 2015. - 289 с.

21. Воронецкий, Ю.О. Методы борьбы с переобучением искусственных нейронных сетей / Ю.О. Воронецкий, Н.А. Жданов // Научный аспект. -2019. - Т. 13. - № 2. - С. 1639-1647.

22. Воронцов, К.В. Алгоритмы кластеризации и многомерного шкалирования [Электронный ресурс] / К.В. Воронцов // М.: Изд-во МГУ, 2007. - Режим доступа: http://www.ccas.ru/voron/download/Clustering.pdf (дата обращения: 03.09.2021).

23. Гарсиа-Молина, Г. Системы баз данных. Полный курс / Г. Гарсиа-Молина, Дж. Ульман, Дж. Уидом. - М.: Вильямс, 2003. - 1088 с.

24. Годяев, А.А. Программа построения самоорганизующихся карт Кохонена при категориальных и смешанных данных / А.А. Годяев, А.В. Гиголаев, Н.И. Цуканова // Вестник Рязанского государственного радиотехнического университета. - 2017. - № 61.

25. Горячев, С.С. О решении задачи выделения признаков в сильно зашумленных сигналах ЭЭГ с применением самоорганизующихся карт Кохонена / С.С. Горячев // Обозрение прикладной и промышленной математики. - 2019. - Т. 26. - № 4. - С. 353-354.

26. Дебок, Г. Анализ финансовых данных с помощью самоорганизующихся карт / Г. Дебок, Т. Кохонен. - М.: Издательский дом «Альпина», 2001. - 317 с.

27. Дейт, К.Д. Введение в системы баз данных / К. Д. Дейт; К.Д. Дейт; [пер. с англ. и ред. К.А. Птицына]. - 8-е изд.. - М.: Вильямс, 2005. - 1328 с.

28. Долженко, А.И. Классификация микросервисов с использованием нейронной сети и самоорганизующихся карт Кохонена / А.И. Долженко, Р.В. Буланов // Проблемы проектирования, применения и безопасности информационных систем в условиях цифровой экономики: Материалы XX Международной научно-практической конференции, посвященной 85-летию

экономиста-математика, доктора экономических наук, профессора Виктора Алексеевича Кардаша. - Ростов-на-Дону, 2020. - С. 175-181.

29. Дуля, И.С. Исследование эффективности применения метода главных компонент в задачах классификации / И.С. Дуля // Аллея науки. -

2017. - Т. 1. - № 14. - С. 283-290.

30. Дяченко, В.А. Адаптивная параллельная процедура обучения самоорганизующейся модифицированной карты Кохонена / В.А. Дяченко, О.Ф. Михаль // Восточно-Европейский журнал передовых технологий. -2012. - Т. 2. - № 4(56). - С. 11-14.

31. Егоров, А.В. Особенности методов кластеризации данных / А.В. Егоров, Н.И. Куприянова // Известия ЮФУ. Технические науки. -2011. - № 11(124). - С. 174-178.

32. Егорова, Д.К. Реализация метода главных компонент в вычислительной среде R / Д.К. Егорова, С.Н. Тимовкин // Огарёв-ОпНпе. -

2018. - № 14(119). - С. 6.

33. Ермаков, Е.Ю. Операторный метод оценки времени выполнения запросов в параллельной колоночной системе баз данных: автореферат диссертации на соискание ученой степени кандидата технических наук / Ермаков Евгений Юрьевич. - Москва, 2015. - 22 с.

34. Жгун, Т.В. Применение метода главных компонент для построения объективных показателей изменения качества системы / Т.В. Жгун, А.В. Липатов, Д.Д. Лемешова // Современные информационные технологии и ИТ-образование. - 2015. - Т. 11. - № 2. - С. 446-455.

35. Жуков, Л.А. Эффект структурного переобучения при оптимизации структур нейронных сетей / Л.А. Жуков, А.В. Хомич // Новые информационные технологии в автоматизированных системах. - 2006. -№ 9. - С. 96-101.

36. Зайнуллин, А.С. Усовершенствованный метод кластеризации на основе самоорганизующихся карт Кохонена / А.С. Зайнуллин // Научная мысль. - 2017. - Т. 2. - № 4(26). - С. 95-99.

37. Зорин, А.В. Распознавание лиц с использованием метода главных компонент / А.В. Зорин, А.Н. Суханова // Синергия Наук. - 2020. - № 43. -С. 504-509.

38. Зудов, А.Б. Модельные представления и алгоритмы проверки правил в активных базах данных: автореферат диссертации на соискание ученой степени кандидата технических наук / Зудов Антон Борисович. -Пенза, 2015. - 22 с.

39. Кабаков, Р.И. R в действии. Анализ и визуализация данных в программе R / Р.И. Кабаков. - М.: ДМК Пресс, 2014. - 588 с.

40. Калиниченко, Л.А. Поддержка баз данных с онтологическими зависимостями на основе дескриптивных логик / Л.А. Калиниченко // Системы высокой доступности. - 2012. - Т. 8. - № 1. - С. 3-12.

41. Калиниченко, Л.А. Развитие методов и средств интеграции неоднородных информационных ресурсов и их семантической интероперабельности / Л.А. Калиниченко // История науки и техники. -2008. - № 7. - С. 18-26.

42. Канев, О.К. Использование четкой кластеризации для начальной инициализации центров кластеров при нечеткой кластеризации данных / О.К. Канев // Сборник материалов X Международной научно-практической конференции «Вектор развития современной науки». - 2016. - С. 477-481.

43. Карпенко, А.П. Идентификация личности по голосу на основе самоорганизующейся карты Кохонена / А.П. Карпенко, А.Н. Морозов // Наука и образование: научное издание МГТУ им. Н.Э. Баумана. - 2012. -№ 11. - С. 26.

44. Князь, Д. Анализ основных алгоритмов кластеризации многомерных данных / Д. Князь. - LAP Lambert Academic Publishing, 2014. -795 c.

45. Когаловский, М.Р. Системы доступа к данным, основанные на онтологиях / М.Р. Когаловский // Программирование. - 2012. - Т. 38. - № 4. -С. 55-77.

46. Когаловский, М.Р. Энциклопедия технологий баз данных / М.Р. Когаловский. - М: Издательство «Финансы и статистика», 2002. - 800 с.

47. Коннолли, Т. Базы данных: Проектирование, Реализация и сопровождение. Теория и практика / Т. Коннолли, К. Бегг, А. Страчан. - М.: Вильямс, 2000. - 1093 с.

48. Константинов, И.С. Нечеткая система для оценки эффективности управления информационным обменом сети корпоративных порталов / И.С. Константинов, С.А. Лазарев, К.А. Польщиков // Вестник компьютерных и информационных технологий. - 2016. - № 9. - С. 42-47.

49. Кохонен, Т. Самоорганизующиеся карты / Т. Кохонен. - М.: БИНОМ. Лаборатория знаний, 2008. — 655 с.

50. Кремер, Н.Ш. Теория вероятностей и математическая статистика / Н.Ш. Кремер. - М.: ЮНИТИ-ДАНА, 2009. - 538 с.

51. Кузнецов, С.Д. Исследование и разработка SQL-сервера: автореферат диссертации на соискание ученой степени доктора физико-математических наук / Кузнецов Сергей Дмитриевич. - Москва, 1993. - 22 с.

52. Кузнецов, С.Д. Новые алгоритмы лексической оптимизации запросов / С. Д. Кузнецов, Н. А. Мендкович // Моделирование и анализ информационных систем. - 2009. - Т. 16. - № 4. - С. 22-33.

53. Кузнецов, С. Д. Объектно-реляционные базы данных: прошедший этап или недооцененные возможности? / С. Д. Кузнецов // Труды Института системного программирования РАН. - 2007. - Т. 13. - № 2. - С. 115-140.

54. Куликова, И. В. Моделирование синтеза нечетких регуляторов типа Такаги - Сугено - Канга в некоторых системах управления / И. В. Куликова // Вестник Тюменского государственного университета. Физико-математическое моделирование. Нефть, газ, энергетика. - 2021. - Т. 7. -№ 2(26). - С. 147-169.

55. Лебедев, Б.К. Разбиение на классы методом альтернативной коллективной адаптации / Б.К. Лебедев, О.Б. Лебедев, Е.М. Лебедева / Известия ЮФУ. Технические науки. - 2016. - № 7 (180). - С. 89-101.

56. Леонов, Д.Г. Сравнительный анализ способов организации хранения информационных объектов с динамической структурой / Д.Г. Леонов // Информационные технологии и вычислительные системы. -2015. - № 1. - С. 83-90.

57. Лори, П. Базы данных для микроЭВМ / П. Лори. - М.: Машиностроение, 1988. - 136 с.

58. Лукьянчиков, О.И. Технология агентно-реляционного отображения при агентно- ориентированном программировании / О.И. Лукьянчиков, Е.В. Никульчев, В.В. Филатов // ИТ-Стандарт. - 2015. - № 2(3). - С. 79-85.

59. Лучинин, З.С. Модель и методы поддержки ограничений целостности в документо-ориентированных базах данных: автореферат диссертации на соискание ученой степени кандидата технических наук / Лучинин Захар Сергеевич. - Санкт-Петербург, 2015. - 22 с.

60. Мельников, А.В. Метод главных компонент слоя Кохонена / А.В. Мельников, А.В. Мальцев // Общественная безопасность, законность и правопорядок в III тысячелетии. - 2015. - № 1-3. - С. 106-107.

61. Меркулов, Д.М. Экспериментальное исследование весов экстремального переобучения нейронных сетей / Д.М. Меркулов, И.В. Оселедец // Информационные процессы. - 2019. - Т. 19. - № 2. -С. 113-121.

62. Микляев, И.А. Методы реализации объектных статических моделей в приложениях баз данных / И.А. Микляев, П.П. Олейник, С.М. Салибекян // Информационные технологии и вычислительные системы. - 2016. - № 1. - С. 12-31.

63. Мирошников, А.И. Использование объектно-ориентированной технологии доступа к данным интервального типа / А.И. Мирошников, П.В. Сараев, А.В. Галкин // Международная конференция по мягким вычислениям и измерениям. - 2018. - Т. 1. - С. 184-187.

64. Мифтахов, Р.И. Проблема переобучения нейронных сетей и методы ее решения / Р.И. Мифтахов // Моя профессиональная карьера. - 2020. -Т. 3. - № 11. - С. 59-62.

65. Михеичев, В. Опыт и рекомендации по оптимизации SQL-запросов [Электронный ресурс] / В. Михеичев // Интернет-журнал «FORS». - 2013. -№ 7. - Режим доступа: https://www.fors.ru/upload/magazine/07/http_text/ russia_mihjeichev_plan_recomendations.html (дата обращения: 03.09.2021).

66. Модель для оценки эффективности выполнения робототехнической системой коммуникативных функций / К.А. Польщиков, С.А. Лазарев, И.С. Константинов, О.Н. Польщикова, Л.Ф. Свойкина, Е.В. Игитян, М.С. Балакшин // СТИН. - 2020. - № 6. - С. 4-7.

67. Мюллер, Р.Дж. Базы данных и UML. Проектирование / Р.Дж. Мюллер. - Лори, 2002. - 420 с.

68. Нагао, М. Структуры и базы данных / М. Нагао, Т. Катаяма, С. Уэмура. - М: Мир, 1986. - 200 с.

69. Нарушев, И.Р. Нейронная сеть на основе самоорганизующейся карты Кохонена как средство выявления аномального поведения / И.Р. Нарушев // Охрана, безопасность, связь. - 2018. - Т. 2. - № 3(3). - С. 194-197.

70. Нгуен, С.Л. Математическое и программное обеспечение минимизации запросов для распределения виртуальной пропускной способности вероятностных баз данных: автореферат диссертации на соискание ученой степени кандидата технических наук / Нгуен Сон Лам. -Воронеж, 2016. - 22 с.

71. Нехай, И.А. Зависимость точности самоорганизующейся карты Кохонена при решении задачи коммивояжёра от размерности задачи / И.А. Нехай // Научное сообщество студентов XXI столетия. Технические науки: сборник статей по материалам LXXXIX студенческой международной научно-практической конференции. - Новосибирск, 2020. - С. 130-132.

72. Никулин, И.И. Нейросетевой кластерный анализ площадных геофизических данных рудоносного Хибино-Ловозёрского вулкано-

плутонического комплекса (Кольский п-ов) методом самоорганизующихся карт Кохонена / И.И. Никулин, А.А. Самсонов // Геофизические исследования. - 2021. - Т. 22. - № 1. - С. 25-39.

73. Нуруллина, Г. Л. Обучение нейронной сети для распознавания букв русского алфавита посредством построения самоорганизующейся карты и метода Кохонена / Г.Л. Нуруллина // Актуальные проблемы науки в студенческих исследованиях: сборник материалов IX Всероссийской студенческой научно-практической конференции. - Альметьевск, 2019. -С. 156-160.

74. Орлов, А.И. Математические методы теории классификации /

A.И. Орлов // Научный журнал КубГАУ. - 2014. - №95. - 483 с.

75. Орлов А.И. Прикладная статистика / А.И. Орлов. - М.: «Экзамен», 2004. - 656 с.

76. Осетрова, И.С. Администрирование MS SQL Server 2014 / И.С. Осетрова. - СПб: Университет ИТМО, 2016. - 90 с.

77. Осовский, С. Нейронные сети для обработки информации / С. Осовский. - М.: Финансы и статистика, 2002. - 244 с.

78. Паклин, Н.Б. Бизнес-аналитика: от данных к знаниям / Н.Б. Паклин,

B.И. Орешков. - СПб.: Питер, 2013. — 704 с.

79. Паращинец, А.В. Нейросетевой алгоритм кластеризации узлов беспроводной сенсорной сети на основе самоорганизующейся карты Кохонена / А. В. Паращинец, А. Е. Ефремова // Доклады Томского государственного университета систем управления и радиоэлектроники. -2018. - Т. 21. - № 4. - С. 87-91.

80. Пастухова, Г.В. Применение самоорганизующихся карт Кохонена для анализа базы патентов / Г.В. Пастухова // Национальная Ассоциация Ученых. - 2021. - № 65-2(65). - С. 51-54.

81. Платонов, Ю.Г. Возможности технологии object relational mapping для нереляционных баз данных / Ю.Г. Платонов, Е.В. Артамонова //

Современные тенденции развития науки и технологий. - 2017. - № 3-4. - С. 104-108.

82. Плетнев, А. А. Моделирование динамических баз данных: автореферат диссертации на соискание ученой степени кандидата физико-математических наук / Плетнев Александр Андреевич. - Москва, 2016. - 22 с.

83. Поиск закономерностей в больших массивах данных глобального экономического ландшафта с самоорганизующейся картой Кохонена / Н.И. Ломакин, А.Ф. Московцев, А.В. Копылов [и др.] // В мире научных открытий. - 2017. - Т. 9. - № 2-2. - С. 32-34.

84. Половинкин, А.А. Сравнение подходов к распараллеливанию алгоритма самоорганизующихся карт Кохонена / А.А. Половинкин, С.В. Родионов // Наука настоящего и будущего. - 2019. - Т. 1. - С. 99-101.

85. Польщиков, К.А. Алгоритм нейро-нечеткого выбора тайм-аута повторной передачи в самоорганизующейся сети / К.А. Польщиков // Системный анализ и информационные технологии в науках о природе и обществе. - 2015. - № 1-2. - С. 106-109.

86. Польщиков, К.А. Алгоритм поддержки принятия решений по выбору средств обработки больших массивов естественно-языковых данных / К.А. Польщиков, О.Н. Польщикова, Е.В. Игитян, М.С. Балакшин // Научные ведомости БелГУ. Серия: Экономика. Информатика. - 2019. - № 3. - С. 553562.

87. Польщиков, К.А. Методика нейро-нечеткого прогнозирования потерь пакетов при перегрузке компьютерной сети / К.А. Польщиков, Ю.Н. Здоренко, Г.В. Сокол // Научный вестник ДГМА. - 2011. - №2 (8Е). -С. 77-86.

88. Польщиков, К.А. Метод нейро-нечеткого управления интенсивностью отправки данных узлами-источниками в мобильной радиосети специального назначения / К.А. Польщиков // Наука и техника Воздушных сил Украины. - 2012. - № 3 (9). - С. 118-122.

89. Польщиков К. А. Метод нейро-нечеткого управления интенсивностью повторных передач в телекоммуникационной сети / К. А. Польщиков // Информационные технологии и телекоммуникации. -СПб, 2013. - Вып. 2. - С. 32-41.

90. Польщиков, К.А. Методы и модели нейро-нечеткого управления интенсивностью потоков данных в мобильной радиосети специального назначения: монография / К.А. Польщиков. - Краматорск: ДГМА, 2013. -148 с.

91. Польщиков, К.А. Модель нейро-нечеткого прогнозирования времени ожидания подтверждений в беспроводной самоорганизующейся сети / К.А. Польщиков, Е.В. Игитян // Системный анализ и информационные технологии в науках о природе и обществе. - 2016. - № 1-2. - С. 85-92.

92. Польщиков, К.А. Модель нейро-нечеткого прогнозирования средней интенсивности поступления запросов на передачу потоков реального времени по каналу телекоммуникационной сети / К.А. Польщиков, Е.Н. Кубракова, В.А. Краснобаев // Системы обработки информации. - 2014. - Вып. 2 (118). - С. 193-197.

93. Польщиков, К.А. Нейро-нечеткое прогнозирование длительности ожидания подтверждений в телекоммуникационной сети / К.А. Польщиков // Системный анализ и информационные технологии в науках о природе и обществе. - 2014. - № 1-2. - С. 57-61.

94. Польщиков, К.А. Нечеткие нейронные системы в беспроводных самоорганизующихся сетях: монография / К.А. Польщиков, С.А. Лазарев. -Beau Bassin: LAP Lambert Academic Publishing, 2018. - 180 с.

95. Польщиков, К.А. Обобщенные модели нейро-нечетких систем управления интенсивностью потоков данных в мобильной радиосети / К.А. Польщиков // Science and Education a New Dimension. - Budapest, 2013. -Vol. 8. - P. 133-137.

96. Польщиков, К. А. Усовершенствованный метод нейро-нечеткого управления отбрасыванием пакетов в транзитных маршрутизаторах

телекоммуникационной сети / К. А. Польщиков, Ю. Н. Здоренко // Проблемы телекоммуникаций. - 2014. - № 2 (14). - С. 76-90.

97. Поляк, Б.Т. Метод главных компонент: робастные версии / Б.Т. Поляк, М.В. Хлебников // Автоматика и телемеханика. - 2017. - № 3. -С. 130-148.

98. Прайс, Д. Oracle Database 11g SQL. Операторы SQL и программы PL/SQL / Д. Прайс. - М.: ЛОРИ, 2014. - 688 с.

99. Препарата, Ф. Вычислительная геометрия: Введение / Ф. Препарата, М. Шеймос // - М.: Мир, 1989. - 111 с.

100. Применение статистической обработки данных для повышения эффективности распознавания лиц с помощью метода главных компонент / Я.М. Вай, Ю.П. Лисовец, Е.Л. Романова, Н.В. Тхет // Электронные информационные системы. - 2019. - № 2(21). - С. 33-42.

101. Прохоров, Ю.В. Вероятность и математическая статистика: Энциклопедия / Ю.В. Прохоров. - М.: Большая Российская энциклопедия, 1999. - 910 с.

102. Пырнова, О.А. Методы и проблемы переобучения многослойной нейронной сети / О.А. Пырнова, Р.С. Зарипова // Информационные технологии в строительных, социальных и экономических системах. - 2020. -№ 2(20). - С. 101-102.

103. Рвачева, Н.В. Метод выбора межсегментного интервала в транспортном протоколе телекоммуникационной сети на основе системы нечеткого вывода / Н.В. Рвачева, К.А. Польщиков, С.В. Волошко // Проблемы телекоммуникаций. - 2011. - Вып. 2(4). - С. 72-82.

104. Роб, П. Системы баз данных: проектирование, реализация и управление: [пер. с англ.] / П. Роб, К. Коронел. - 5-е изд.. - СПб.: БХВ-Петербург, 2004. - 1040 с.

105. Русанов, А.Д. Исследование зависимости качества обучения самоорганизующийся карты Кохонена от предварительной обработки входных данных на примере решения задачи о распознавании буквенных

символов / А.Д. Русанов, Д.К. Некрасов // Новые информационные технологии в автоматизированных системах. - 2017. - № 20. - С. 220-225.

106. Рыжков В.А. Совершенствование самоорганизующихся нейронных сетей Кохонена для систем поддержки принятия решений. Дисс. канд. техн. наук. - Москва, 2010.

107. Сегментация самоорганизующейся картой Кохонена цифровых микроскопических изображений мокроты, окрашенной по методу Циля-Нильсена / С.А. Сысоев, А.Н. Наркевич, И.Г. Шеломенцева [и др.] // Вестник новых медицинских технологий. Электронное издание. - 2018. - № 3. -С. 8-14.

108. Советов, Б.Я. Базы данных: теория и практика / Б.Я. Советов, В.В. Цехановский, В.Д. Чертовский. - 2-е изд. - Москва: Юрайт, 2012. -464 с.

109. Тарасов, А.Ф. Метод нейро-нечеткого прогнозирования длительности простоя сервера / А.Ф. Тарасов, Н.В. Еремин, К.А. Польщиков // Тезисы докладов Четвертой международной научно-практической конференции «Интеллектуальные системы в промышленности и образовании». - Сумы, 2013.

110. Татаринцев, А.А. Кластеризация при построении моделей Такаги-Сугено / А.А. Татаринцев, О.М. Бердникова // Перспективы развития информационных технологий. - 2015. - № 27. - С. 39-44.

111. Татарникова, Т.М. Анализ данных / Т.М. Татарникова. - СПб.: Изд-во СПбГЭУ, 2018. - 82 с.

112. Тиори, Т. Проектирование структур баз данных / Т. Тиори, Дж. Фрай. - М: Мир, 1985. - 287 с.

113. Ульман, Дж. Основы систем баз данных / Дж. Ульман. - Пер. с англ. М.Р. Когаловского и В.В. Когутовского; под ред. М.Р. Когаловского. -М.: Финансы и статистика, 1983. - 334 с.

114. Файзуллин, Р. В. Прогнозирование структурных сдвигов на основе самоорганизующихся карт Кохонена / Р.В. Файзуллин, Ш. Херинг //

Искусственный интеллект в решении актуальных социальных и экономических проблем XXI века: Сборник статей по материалам Четвертой всероссийской научно-практической конференции, проводимой в рамках Пермского естественнонаучного форума «Математика и глобальные вызовы XXI века». - Пермь, 2019. - С. 173-178.

115. Хайкин, С. Нейронные сети: полный курс / С. Хайкин. - М.: Вильямс, 2006. - 1104 с.

116. Хайлан, A.M. Обнаружение ресурсоемких запросов к базам данных на основе применения самоорганизующихся карт и нечеткого вывода / A.M. Хайлан, К.А. Польщиков, С.М.М. Алгазали // Экономика. Информатика. - 2021. - Т. 48. - № 3. - С. 578-593.

117. Харрингтон, Д. Проектирование объектно-ориентированных баз данных / Д. Харрингтон. - Москва: ДМК Пресс, 2001. - 272 с.

118. Ходашинский, И.А. Об одном методе инициализации нечётких систем типа Такаги-Сугено / И.А. Ходашинский, К.С. Сарин, С.А. Черепанов // Автометрия. - 2016. - Т. 52. - № 3. - С. 61-70.

119. Цвященко, Е.В. Модели процессов согласования реплик в базах данных NoSQL: автореферат диссертации на соискание ученой степени кандидата технических наук / Цвященко Евгений Васильевич. - Москва, 2016. - 22 с.

120. Цынко, Д.О. Кластеризация. Методы кластеризации / Д.О. Цынко, Х.Ш. Мамаев // Академия педагогических идей Новация. Серия: Научный поиск. - 2018. - № 10. - С. 6-9.

121. Чуканов, С. Н. Оценивание взаимодействия процессов в каналах систем управления на основе модели Такаги-Сугено / С.Н. Чуканов // Авиакосмическое приборостроение. - 2020. - № 5. - С. 27-34.

122. Шичкина, Ю. Подходы для ускорения обработки данных в реляционных базах данных / Ю. Шичкина // 13-й Международный симпозиум по интеллектуальным системам «INTELS 2018». - Санкт-Петербург, 2019. - Т. 150. - С. 131-139.

123. Alghazali, S.M.M. Development of Intelligent Tools for Detecting Resource-intensive Database Queries / S.M.M. Alghazali, K. Polshchykov, A.M. Hailan, L. Svoykina // International Journal of Advanced Computer Science and Applications. - 2021. - № 12(7). - PP. 32-36.

124. Bachhav, A. An Efficient Query Optimizer with Materialized Intermediate Views in Distributed and Cloud Environment / A. Bachhav, V. Kharat, M. Shelar // Tehnicki glasnik. - 2021. - № 15. - PP. 105-111.

125. Belattar S. New Learning Approach for Unsupervised Neural Networks Model with Application to Agriculture Field / S. Belattar, O. Abdoun, H. El khatir // International Journal of Advanced Computer Science and Applications. - 2020. - № 11(5). - PP. 360-369.

126. Bodepudi, H. Faster The Slow Running RDBMS Queries With Spark Framework / H. Bodepudi // International Journal of Scientific and Research Publications. - 2020. - Vol. 10. - PP. 287-291.

127. Borys, M. Improving data processing performance for web applications using object-relational mapping / M. Borys, B. Panczyk // Actual Problems of Economics. - 2015. - Vol. 164. - No 2. - PP. 387-395.

128. Brendan, J.F. Clustering by Passing Messages Between Data Points [Электронный ресурс] / J.F. Brendan, D. Delbert // Science. - 2007. - Vol. 315. -Режим доступа: www.sciencemag.org (дата обращения: 03.09.2021).

129. Chamundeswari, G. Contact Distribution Function based Clustering Technique with Self-Organizing Maps / G. Chamundeswari, G.P.S. Varma, Ch. Satyanarayana // International Journal of Image, Graphics and Signal Processing. - 2018. - Vol. 10. - No 3. - P. 9-17.

130. Chang, L.C. Explore training self-organizing map methods for clustering high-dimensional flood inundation maps / L. C. Chang, W. H. Wang, F.J. Chang // Journal of Hydrology. - 2020. Vol. 595 (5). - P. 125655.

131. Chaudhuri, S. Anytime Algorithm of Database Tuning Advisor for Microsoft SQL Server [Электронный ресурс] / S. Chaudhuri, V. Narasayya. -Режим доступа: https://www.microsoft.com/en-us/research/uploads/prod/2020/06

/Anytíme-Algoríthm-of-Database-Tuníng-Advísor-for-Mícrosoft-SQL-Server.pdf (дата обращения: 03.09.2021).

132. Chen, I.-T. Exploríng the spatío-temporal ínterrelatíon between groundwater and surface water by usíng the self-organízíng maps / I.-T. Chen, L.-Ch. Chang, F.-J. Chang // Journal of Hydrology. - 2018. - Volume 556. -PP. 131-142.

133. Clovís, L.R. Yíeld stabílíty analysís of maíze hybrids usíng the self-organízíng map of Kohonen / L.R. Clovís, C.A. Scapím, R.J.B. Pínto // Euphytíca. - 2020. - Vol. 216. - РР. 161.

134. Colley, D. Investigating the effects of object-relational ímpedance mismatch on the effícíency of object-relational mappíng frameworks / D. Colley, C. Staníer, M. Asaduzzaman // Journal of Database Management. - 2020. -Vol. 31. - No 4. - PP. 1-23.

135. Cornejo, R. Performance Tuníng Basícs. In: Dynamic Oracle Performance Analytics / R. Cornejo. - Apress, Berkeley, 2018. - Режим доступа: https://doí.org/10.1007/978-1-4842-4137-0_1 (дата обращения: 03.09.2021).

136. Data-Dríven Vísual Characterízatíon of Patíent Health-Status Usíng Electroníc Health Records and Self-Organízíng Maps / D. Chushíg-Muzo, C. Soguero-Ruíz, I. Mora-Jímenez [et al.] // IEEE Access. - 2020. - Vol. 8. -PP. 137019-137031.

137. European strategíes for adaptatíon to clímate change wíth the Mayors adapt ínítíatíve by self-organízíng maps / F. J. Abarca-Alvarez, M. L. Navarro-Lígero, L. M. Valenzuela-Montes, F. S. Campos-Sánchez // Applied Sciences (Swítzerland). - 2019. - Vol. 9. - No 18. - P. 3859.

138. Fattah, S.M.A. An Adaptive Hybrid Controller for DBMS Performance Tuníng / S.M.A. Fattah, M.A. Mahmoud, L.A.E. Abd-Elmegíd // International Journal of Advanced Computer Scíence and Applícatíons. - 2014. -№ 5. - PP. 151-156.

139. Fernandez, I. Begínníng Oracle Database 12c Admínístratíon. From Novíce to Professíonal / I. Fernandez // Apress, 2015. - 384 p.

140. Galutira, E.F. A novel kohonen self-organizing maps using exponential decay average rate of change for color clustering / E.F. Galutira, R.P. Medina, A.C. Fajardo // Lecture Notes in Networks and Systems. - 2019. - Vol. 67. - PP. 23-33.

141. Girau, B. Fault tolerance of self-organizing maps / B. Girau, C. Torres-Huitzil // Neural Computing & Applications. - 2020. - Vol. 32. - No 24. -P. 17977-17993.

142. Guaman, D. Classifying Model-View-Controller Software Applications Using Self-Organizing Maps / D. Guaman, S. Delgado, J. Perez // IEEE Access. - 2021. - Vol. 9. - P. 45201-45229.

143. Hazan, H. Unsupervised Learning with Self-Organizing Spiking Neural Networks / H. Hazan, D. Saunders, D.T. Sanghavi, H. Siegelmann, R. Kozma // 2018 International Joint Conference on Neural Networks (IJCNN). -2018. - PP. 1-6.

144. Highly accurate recognition of handwritten arabic decimal numbers based on a self-organizing maps approach / A. Alqudah, M. Al-Qodah, H.R. Al-Zoubi, M.A. Al-Khassaweneh // Intelligent Automation and Soft Computing. -2018. - Vol. 24. - No 3. - P. 493-505.

145. IBM Support. DB2 database product documentation [Электронный ресурс]. - Режим доступа: https://www.ibm.com/support/pages/db2-database-product-documentation (дата обращения: 03.09.2021).

146. Kalmegh, P. Analyzing Query Performance and Attributing Blame for Contentions in a Cluster Computing Framework [Электронный ресурс] / P. Kalmegh, S. Babu, S. Roy // arXiv:1708.08435v2. - 2018. - Режим доступа: https://arxiv.org/abs/1708.08435.

147. Kivimoto, K. Topology Preservation in SOM / K. Kivimoto // Proc. of International Conference on Neural Networks. - Washington, 1996. - Vol. 1. -PP. 294-300.

148. Kogan, J. Clustering Large and High Dimensional data [Электронный ресурс] / J. Kogan, C. Nicholas, M. Teboulle. - Режим доступа:

http : //www.csee.umbc.edu/nicholas/clustering/tutorial .pdf, (дата обращения : 03.09.2021).

149. Kohonen, T. Self-Organizing Maps (Third Extended Edition) / T. Kohonen. - New York, 2001. - 501 p.

150. Konstantinov, I. Model of Neuro-Fuzzy Prediction of Confirmation Timeout in a Mobile Ad Hoc Network / I. Konstantinov, K. Polshchykov, S. Lazarev, O. Polshchykova // CEUR Workshop Proceedings. Mathematical and Information Technologies. - 2017. - Vol. 1839. - PP. 174-186.

151. Konstantinov, I.S. Algorithm for neuro-fuzzy control of data sending intensity in a mobile ad hoc network for special purpose / I.S. Konstantinov, K.O. Polshchykov, S.A. Lazarev // Journal of Current Research in Science. -2016. - Vol. 4, No 1. - PP. 105-108.

152. Konstantinov, I.S. Fuzzy system synthesis and adjustment fuzzy to evaluate the effectiveness of information exchange management within corporate portal network / I.S. Konstantinov, S.A. Lazarev, K.O. Polshchykov // Journal of Current Research in Science. - 2016. - Vol. 4, No 1. - PP. 109-115.

153. Konstantinov, I.S. The Algorithm for Neuro-Fuzzy Controlling the Intensity of Retransmission in a Mobile Ad-Hoc Network / I.S. Konstantinov, K.O. Polshchykov, S.A. Lazarev // International Journal of Applied Mathematics and Statistics. - 2017. - Vol. 56, Issue No. 2. - PP. 85-90.

154. Konstantinov, I. The Usage of the Mobile Ad-Hoc Networks in the Construction Industry / I. Konstantinov, K. Polshchykov, S. Lazarev, O. Polshchykova // Proceedings of the 10th International Conference on Application of Information and Communication Technologies (AICT). - Baku, 2016. - P. 455-457.

155. Kuhn, D. SQL Tuning Advisor. In: Expert Indexing in Oracle Database 11g [Электронный ресурс] / D. Kuhn, S.R. Alapati, B. Padfield. -Режим доступа: https://doi.org/10.1007/978-1-4302-3736-5_9 (дата обращения: 10.08.2021).

156. Lampinen, J. Overtraining and model selection with the selforganizing map / J. Lampinen, T. Kostiainen // Proceedings of the International Joint Conference on Neural Networks. - 1999. - Vol. 3. - PP. 1911-1915.

157. Lan, H. Survey on Advancing the DBMS Query Optimizer: Cardinality Estimation, Cost Model, and Plan Enumeration / H. Lan, Z. Bao, Y.A. Peng // Data Sci. Eng., 2021. - № 6. - PP. 86-101.

158. Lekshmi, B.G. COPRAO: A Capability Aware Query Optimizer for Reconfigurable Near Data Processors / B.G. Lekshmi, K. Meyer-Wegener // 2021 IEEE 37th International Conference on Data Engineering Workshops (ICDEW). -2021. - PP. 54-59.

159. Maaten L.J.P. Visualizing High-Dimensional Data Using t-SNE / L.J.P. Maaten, G.E. Hinton // Journal of Machine Learning Research. - 2008. -№ 9. - PP. 2579-2605.

160. Ma, M. Diagnosing Root Causes of Intermittent Slow Queries in Cloud Databases / M. Ma, Z. Yin, S. Zhang // PVLDB. - 2020. - Vol. 13(8), PP. 1176-1189.

161. Martins, D. M. L. Hybrid Intelligent Decision Support Using a Semiotic Case-Based Reasoning and Self-Organizing Maps / D. M. L. Martins, F. B. De Lima Neto // IEEE Transactions on Systems, Man, and Cybernetics: Systems. - 2020. - Vol. 50. - No 3. - P. 863-870.

162. Melin, P. Analysis of Spatial Spread Relationships of Coronavirus (COVID-19) Pandemic in the World using Self Organizing Maps [Электронный ресурс] / P. Melin, J.C. Monica, D. Sanchez, O. Castillo // Chaos, Solitons & Fractals. - 2020. - Volume 138. - Режим доступа: https://doi.org/10.1016/ j.chaos.2020.109917.

163. Mewes, D. Horizontal temperature fluxes in the arctic in CMIP5 model results analyzed with self-organizing maps / D. Mewes, C. Jacobi // Atmosphere. - 2020. - Vol. 11. - No 3. - P. 251.

164. Miao, Z. I-Rex: an interactive relational query explainer for SQL / Z. Miao, T. Chen, A. Bendeck, K. Day, S. Roy, J. Yang // Proc. VLDB Endow. -

2020. - Vol 13. - PP. 2997-3000.

165. Miljkovic, D. Brief review of self-organizing maps / D. Miljkovic // 2017 40th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), 2017. - PP. 1061-1066.

166. Muniswamaiah, M. Approximate Query Processing for Big Data in Heterogeneous Databases / M. Muniswamaiah, T. Agerwala, C.C. Tappert // 2020 IEEE International Conference on Big Data. - 2020. - PP. 5765-5767.

167. MS SQL Server Technical Documentation [Электронный ресурс]. -Режим доступа: https://docs.microsoft.com/en-us/ (дата обращения: 03.09.2021).

168. Nguyen, T. H. Metagenome-Based Disease Classification with Deep Learning and Visualizations Based on Self-organizing Maps / T. H. Nguyen // Lecture Notes in Computer Science. - 2019. - Vol. 11814. - P. 307-319.

169. Oleynik, P.P. Implementation Patterns of Object Static Models for Database Applications: Classical ORM-Patterns and Object-Attribute Approach / P.P. Oleynik, S.M. Salibekyan // International Journal of Applied Engineering Research. - 2015. - Vol. 10. - No 24. - P. 41431-41443.

170. Oracle help center. Official documentation and Information about products and services with targeted solutions, getting started guides, and content for advanced use cases [Электронный ресурс]. - Режим доступа: https://docs. oracle.com/cd/B 19306_01/server. 102/b14237/statview_3183.htm#REFRN23447 (дата обращения: 10.08.2021).

171. Pen, H. Boundary precedence image inpainting method based on Self-organizing Maps / H. Pen, Q. Wang, Z. Wang // Knowledge-Based Systems. -

2021. - Vol. 216. - P. 106722.

172. Polshchykov K.A. Assessing the Efficiency of Robot Communication / K.A. Polshchykov, S.A. Lazarev, I.S. Konstantinov, O.N. Polshchykova, L.F. Svoikina, E.V. Igityan, M.S. Balakshin // Russian Engineering Research. - 2020. - Vol 40, No 11. - PP. 936-938.

173. Polshchykov, K.O. Method of telecommunications channel throughput distribution based on linear programming and neuro fuzzy predicting / K.O. Polshchykov, Y.M. Zdorenko, M.O. Masesov // Elixir International Journal. Network Engineering. - 2014. - Vol. 75. - PP. 27327-27334.

174. Polshchykov K.O. Neuro-Fuzzy Control of Data Sending in a Mobile Ad Hoc Network / K.O. Polshchykov, S.A. Lazarev, A.D. Zdorovtsov // Journal of Fundamental and Applied Sciences. - 2017. - Vol 9, No 2S. - PP. 1494-1501.

175. Polshchykov K. Neuro-Fuzzy System for Prediction of Telecommunication Channel Load / K. Polshchykov, Y. Zdorenko, M. Masesov // Proceedings of the Second International Scientific-Practical Conference "Problems of Infocommunications Science and Technology (PIC S&T)". - Kharkiv, 2015. -PP. 33-34.

176. Polschykov K. Synthesis of neuro-fuzzy systems for active management of packet queues in telecommunication networks / K. Polschykov, Y. Korotenko // Elixir International Journal. Network Engineering. - 2013. -Vol. 62. - PP. 17501-17506.

177. Polshchykov K.O. Synthesis of neuro-fuzzy systems of data flows intensity control in mobile ad-hoc network / K.O. Polshchykov // Microwave and Telecommunication Technology (CriMiCo), 23rd International Crimean Conference. - Sevastopol, 2013. - PP. 517-518.

178. Polshchykov, K. The Algorithm for Decision-Making Supporting on the Selection of Processing Means for Big Arrays of Natural Language Data / K. Polshchykov, S. Lazarev, O. Polshchykova, E. Igityan // Lobachevskii Journal of Mathematics, 2019. - Vol. 40, No. 11. - PP. 1831-1836.

179. Qu, X. A Survey on the Development of Self-Organizing Maps for Unsupervised Intrusion Detection / X. Qu, L. Yang, K. Guo // Mobile Network Applications. - 2021. - Volume 26. - PP. 808-829.

180. Radio galaxy zoo: Knowledge transfer using rotationally invariant self-organizing maps / T. J. Galvin, M. Huynh, R. P. Norris [et al.] // Publications

of the Astronomical Society of the Pacific. - 2019. - Vol. 131. - No 1004. -P. 108009.

181. Rahman, H. Oracle Database Design and Development in Ador Composite Ltd [Электронный ресурс] / H.Rahman. - Режим доступа: http:// dspace.daffodilvarsity.edu.bd:8080/handle/123456789/5484 (дата обращения: 03.09.2021).

182. Reddy, N. Analyzing plan diagrams of database query optimizers / N. Reddy, J. Haritsa // Proceedings of the 31st international conference on Very large data bases. - Trondheim, Norway, 2005. - PP. 1228-1239.

183. Riese, F.M., Keller, S., Hinz, S. Supervised and Semi-Supervised Self-Organizing Maps for Regression and Classification Focusing on Hyperspectral Data [Электронный ресурс] / F.M. Riese, S. Keller, S. Hinz // Remote Sens. - 2020. - Volume 12, Issue 7. - Режим доступа: https://www.mdpi.com/2072-4292/12/1/7.

184. Rozmus, J.M. The Density-Tracking Self-Organized Map / J.M. Rozmus// Proc. Of International Conference on Neural Networks. -Washington, 1996. - Vol. 1. - PP. 44-50.

185. Rvachova, N. Selecting the intersegment interval for TCP in Telecomms networks using fuzzy inference system / N. Rvachova, G. Sokol, K. Polschykov, J. Davies // Proceedings of the Sixth International Conference "2015 Internet Technologies and Applications (ITA)". - Glyndwr University, Wrexham, UK. - 2015. - P. 256-260.

186. Sakkari, M. A convolutional deep self-organizing map feature extraction for machine learning / M. Sakkari, M. Zaied // Multimedia Tools and Applications. - 2020. - Vol. 79. - РР. 19451-19470.

187. Sarka, D. Exam 70-463: Implementing a Data Warehouse with Microsoft SQL Server 2012 / D. Sarka, M. Lah, G. Jerkic. - O'Reilly Media, 2012. - 484 p.

188. Sharma, M. A review of different cost-based distributed query optimizers / M. Sharma, G. Singh, R. Singh // Prog. Artif. Intell. - 2019. -Vol. 8. - PP. 45-62.

189. Sikdar, S. MONSOON: Multi-Step Optimization and Execution of Queries with Partially Obscured Predicates / S. Sikdar, C. Jermaine // Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD '20). Association for Computing Machinery. - New York, 2020. -PP. 225-240.

190. Sinha, S. Epoch determination for neural network by self-organized map (SOM) / S. Sinha, T.N. Singh, V.K. Singh, A.K. Verma // Computational Geosciences. - 2010. - Vol. 14, No. 1. - PP. 199-206.

191. Su, M.-C. An efficient initialization scheme for the selforganizing feature map algorithm / M.-C.Su, T.-K. Liu, H.-T. Chang // Proc. of International Joint Conference on Neural Networks. - Washington, 1999.

192. Sustainability performance assessment using self-organizing maps (SOM) and classification and ensembles of regression trees (CART) / M. Nilashi, E. Supriyanto, S. Asadi [et al.] // Sustainability. - 2021. - Vol. 13. - No 7.

193. Takagi, T. Fuzzy identification of systems and its applications to modeling and control / T. Takagi, M. Sugeno // IEEE Transactions on Systems, Man, and Cybernetics, vol. 15, no. 1,1985, P. 116-132.

194. Takanashi, M. An Approach to Collaboration of Growing Self-Organizing Maps and Adaptive Resonance Theory Maps / M. Takanashi, H. Torikai, T. Saito // IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences. - 2007. - Vol. E90-A. - No 9. -P. 2047.

195. Tarasov, O. F. Neuro Fuzzy Predicting Mathematic Model of Computer Network Load / O. F. Tarasov, K. O. Polshchykov, N. V. Yeryomin // International Conference "Modern Problems of Radio Engineering, Telecommunications and Computer Science (TCSET'2014)", 2014. - PP. 406-408.

196. Wang, C. Synthesizing highly expressive SQL queries from input-output examples / C. Wang, A. Cheungc, R. Bodik // Proceedings of the 38th ACM SIGPLAN Conf. on Programming Language Design and Implementation. -2017. - PP. 452-466.

197. Wehrens, R. Flexible Self-Organizing Maps in Kohonen 3.0 [Электронный ресурс] / R. Wehrens, J. Kruisselbrink // Journal of Statistical Software. - 2018. - Volume 87, Issue 7. - Режим доступа: https://www.jstatsoft.org/article/view/v087i07.

198. Zhou, X. Matrix Multiplication with SQL Queries for Graph Analytics / X. Zhou, C. Ordonez // 2020 IEEE International Conference on Big Data. - 2020. - PP. 5872-5873.

130

ПРИЛОЖЕНИЕ А Акты внедрения результатов диссертаций

Директор ООО «СКВ Информационные технологии»

Лунев Роман Алексеевич г. Орел, Наугорское шоссе, д.40

АКТ

о внедрении результатов диссертационной работы Алгазали Салах Махди Мадлол «Обнаружение ресурсоемких запросов к базам данных на основе применения самоорганизующихся карт и нечеткого вывода» на соискание ученой степени кандидата технических наук

Результаты прикладных научных разработок - метод обнаружения ресурсоемких запросов к базам данных, предложенных в диссертационной работе Алгазали С.М.М., были использованы ООО «СКВ Информационные технологии» па этапе запуска и внедрения отдельных подсистем геосоциальной сети «УоиСЫ» с целью повышения корректности обнаружения ресурсоемких запросов к базам данных сервиса.

Результаты, полученные на основе применения указанного метода, позволили повысить эффективность управления базами данных, используемыми в процессе функционирования вертикальных решений создаваемых с использованием технологий геосоциальной сети «УоиС1(1».

Директор ООО С

Р.А. Лунев/27.09.2021

бразователыюй (МУ^БелГУ» с^ГА.В. Маматов И 2021 г.

АКТ

о внедрении результатов диссертационной работы Алгазали Салах Махди Мадлол..

«Обнаружение ресурсоемких запросов к базам данных на основе применения самоорганизующихся карт и нечеткого вывода» в учебный процесс федерального государственного автономного образовательного учреждения высшего образования «Белгородский государственный национальный

исследовательский университет»

Комиссия в составе заведующего кафедрой прикладной информатики и информационных технологий к.т.н., доцента Ломакина В.В., доцента кафедры прикладной информатики и информационных технологий к.т.н., доцента Маматова Е.М., доцента кафедры информационных и робототехнических систем к.э.н. Лазарева С.А. составила настоящий акт о том, что результаты, полученные в диссертационной работе Алгазали С.М.М., внедрены в учебный процесс НИУ «БелГУ».

Результаты диссертации Алгазали С.М.М., в частности, методы и модели нейросетевой кластеризации и нечеткого вывода используются в качестве теоретической базы в научных исследованиях магистрантов, обучающихся по направлению подготовки 09.04.03 «Прикладная информатика». Разработанные алгоритмы обучения нейронов самоорганизующейся карты и разграничения ее кластеров используются при выполнении цикла лабораторных работ по дисциплине «Математические и инструментальные методы поддержки принятия решений» для подготовки магистрантов по направлению 09.04.02 «Информационные системы и технологии».

Заведующий кафедрой прик.------"

и информационных техноло! к.т.н., доцент

Доцент кафедры прикладной информатики и информационных технологий к.т.н., доцент

Доцент кафедры информационных и робототехнических систем

к.э.н.

132

ПРИЛОЖЕНИЕ Б Свидетельство о государственной регистрации программы для ЭВМ

133

ПРИЛОЖЕНИЕ В Листинг программы обнаружения ресурсоемких запросов к базам данных на основе нейросетевой кластеризации

МОДУЛЬ model.py (тензорная реализация класса SOM)

#!/usr/bin/python import tensorflow as tf import numpy as np import grid class SOM:

def_init_(self, Rows, Cols, Inputs, seed=None):

# значение для инициалиации генератора псевдослучайных чисел self.Seed = seed

# вычисление топологии SOM заданного размера self.grid = grid.Grid(Rows, Cols)

# вычисление топологических расстояний между каждыми двумя элементами

карты

topodists = np.linalg.norm( np.expand_dims(self.grid.Centers, axis=2) -np.expand_dims(self.grid.Centers, axis=1), axis = 0)

# задание константы топологических расстояний в вычислительном графе self._TopoDists = tf.constant(topodists, name-Distances')

# матрица ближайших соседей для каждого элемента

# (0 - сам элемент или любой не соседний, 1 - ближайший соседний) self._NNN = tf.constant(

(np.absolute(topodists - 1) < 0.001).astype(np.float32))

# задание константы координат элементов карты в вычислительном графе self._Coords = tf.constant(self.grid.Centers.T, dtype=tf.float32, name='Grid')

# входные узлы вычислительного графа:

# Alpha - скорость обучения,

# Sigma - параметр ширины функции соседства,

# Input - поэлементный вход самоорганизующейся карты

# BatchedInput - пакетный вход самоорганизующейся карты

self._Alpha = tf.placeholder(shape=(None), dtype=tf.float32, name='Alpha') self._Sigma = tf.placeholder(shape=(None), dtype=tf.float32, name='Sigma') self._Input = tf.placeholder(shape=(Inputs), dtype=tf.float32, name='Input') self._BatchedInput = tf.placeholder(shape=(None, Inputs), dtype=tf.float32, name='BatchedInput')

# переменная для хранения весовых коэффициентов(координат)

# элементов карты в пространстве входного множества self._Weights = tf.Variable(

tf.random_normal([Cols*Rows, Inputs], seed=self.Seed),

dtype=tf.float32,

name='Weights')

# вычисление расстояние между текущим входным элементом

# и всеми элементами карты пространстве входных данных self._DeltaW = self._Input - self._Weights

self._Dist = tf.norm(self._DeltaW, axis=1)

# получение индекса блидайшего элемента карты self._BMU = tf.argmin(self._Dist)

# то же, но для пакетного входа

self._BatchedDeltas = (tf.expand_dims(self._BatchedInput, axis = 1) -tf.expand_dims(self._Weights, axis = 0))

# индекс кластера для каждого элемента входного множества предоставленного

# на пакетный вход

self._BatchedBMU = tf.argmin(tf.norm(self._BatchedDeltas, axis = 2), axis = 1)

# значение индекса кластера к которому принадлежит

# элемент входного мнодества в унитарном коде

self._OneHotBBMU = tf.one_hot(self._BatchedBMU, axis=1, depth=Cols*Rows)

# количество элементов входного множества в каждом кластере self._ClustHits = tf.reduce_sum(self._OneHotBBMU, axis=0, keepdims=True)

# соотнесения элементов входного множества с сответствующими им

# элементами самоорганизующейся карты self._ClustBatchInp = tf.multiply( tf.expand_dims(self._BatchedInput, axis = 1), tf.expand_dims(self._OneHotBBMU, axis = 2))

# вычислене ошибки квантования для каждого кластера self._Qmap = tf.reshape(

tf.divide(

tf.reduce_sum(

tf.norm(

tf.multiply(

self._ClustBatchInp -

tf.expand_dims(self._Weights, axis = 0),

tf.expand_dims(self._OneHotBBMU, axis = 2)),

axis = 2),

axis = 0),

self._ClustHits),

shape=[-1])

# вычисление U-map для карты self._Umap = tf.reduce_sum( tf.multiply(

tf.norm(

tf.expand_dims(self._Weights, axis=1) -tf.expand_dims(self._Weights, axis=0), axis=2), self._NNN),

axis=1) / tf.reduce_sum(self._NNN, axis=1)

# вычисление маски интерполяции self._InterpolationMask = tf.multiply( tf.cast(

tf.abs(

self._TopoDists -tf.reduce_min( tf.boolean_mask( self._TopoDists,

tf.reshape(self._ClustHits, shape=[-1]) > 0), axis = 0,

keepdims = True )) < 0.001,

dtype=tf.float32),

tf.cast(

tf.transpose(self._ClustHits) > 0, dtype=tf.float32))

# вычисление среднего для каждого кластера self._ClusterMean = tf.divide( tf.reduce_sum(self._ClustBatchInp, axis = 0), tf.transpose(self._ClustHits))

# вычисление дисперсии для каждого кластера self._ClusterVariance = tf.divide( tf.reduce_sum(

tf.square( tf.multiply(

self._ClustBatchInp - self._ClusterMean, tf.expand_dims(self._OneHotBBMU, axis=2))), axis = 0),

tf.transpose(self._ClustHits))

# интерполяция средних кластеров с ненулевы количеством элементов

# входного множества на кластеры с нулевым количеством элементов self._ClustMeanInerpol = tf.divide(

tf.reduce_sum( tf.multiply(

tf.expand_dims(self._InterpolationMask, axis=2),

tf.expand_dims(

tf.where(

tf.is_nan(self._ClusterMean),

tf.zeros_like(self._ClusterMean),

self._ClusterMean),

axis=1)), axis=0),

tf.transpose(

tf.reduce_sum(

self._InterpolationMask, axis=0, keepdims=True)))

# интерполяция дисперсий кластеров с ненулевы количеством элементов

# входного множества на кластеры с нулевым количеством элементов self._ClustVariInerpol = tf.divide(

tf.reduce_sum( tf.multiply(

tf.expand_dims(self._InterpolationMask, axis=2), tf.expand_dims(

tf.where(

tf.is_nan(self._ClusterVariance),

tf.zeros_like(self._ClusterVariance),

self._ClusterVariance),

axis=1 )), axis=0),

tf.transpose(

tf.reduce_sum(

self._InterpolationMask, axis=0, keepdims=True)))

# вычиление значений функции соседства для всех элементов карты self._Neighbourhood = tf.multiply(

self._Alpha, tf.exp( tf.negative( tf.square(

tf.norm( tf.subtract(self._Coords, self._Coords[self._BMU, :]), axis=1, ord='euclidean', keepdims=True) ) / (2 * (self._Sigma ** 2)) )), name='Neighbourhood')

# вычисление значений для обновления весов карты self._WUpdDelta = tf.multiply(

self._DeltaW, self._Neighbourhood)

# обновление весов карты self._Train = tf.assign_add( self._Weights, self._WUpdDelta, name='Train')

# создание сесси для исполнения вычислительного графа и инициализация

# переменных(весов карты) self._Session = tf.Session()

tf.global_variables_initializer().run(session=self._Session)

# метод для обучения карты

def train( self, EpochsNum, Alpha, train_ds, validation_ds=None, sigma_func = lambda x, x_max, a, b: a-(a-b)*(x/x_max),

sigma_start = 50, sigma_end = 0 ): GenErr = [] Qerr = []

# цикл обучения карты

for epoch in range(0, EpochsNum): for i in train_ds:

Ws = self._Session.run( self._Train, feed_dict={self._Input: i, self._Alpha: Alpha, self._Sigma: sigma_func( epoch, EpochsNum, sigma_start, sigma_end) })

# вычисление ошибки обобщения для карты на текущей эпохе обучения if validation_ds is not None:

TrMeans, TrVars, Qmap = self._Session.run( [self._ClustMeanInerpol, self._ClustVariInerpol, self._Qmap], feed_dict={self._BatchedInput: train_ds} ) VlMeans, VlVars = self._Session.run( [self._ClustMeanInerpol, self._ClustVariInerpol], feed_dict={self._BatchedInput: validation_ds} )

GenErrByWeight = np.square(TrMeans - VlMeans) + (TrVars + VlVars)/2

GenErr.append(GenErrByWeight.mean())

Qerr.append(np.nanmean(Qmap))

return Ws, np.array(GenErr), np.array(Qerr)

# метод для получение значений индексов ближайших элементов карты

# для каждого элемента входного множества def classify(self, DataSet):

return self._Session.run(

self._BatchedBMU, feed_dict = {self._BatchedInput: np.array(DataSet)})

# метод для получение значений индексов ближайших элементов карты

# для каждого элемента входного множества в унитарном коде def classify_onehot(self, DataSet):

return self._Session.run(

self._OneHotBBMU, feed_dict = {self._BatchedInput: np.array(DataSet)})

# метод для вычисления ошибки квантования для каждого элемента карты

# c учётом входных данных def calculate_qmap(self, DataSet): return self._Session.run(

self._Qmap, feed_dict = {self._BatchedInput: np.array(DataSet)})

МОДУЛЬ GRID.PY (реализация отображения SOM)

import numpy as np class Grid():

def_init_(self, Rows, Cols, Stride=1, Type='hex'):

# порядковый номер каждого элемента решётки seq = np.array(range(0, Rows*Cols))

# вычисление координат для каждого элемента решётки self.Centers = np.stack((Stride / 2 * (seq // Cols % 2) + seq % Cols, Stride * (seq // Cols) * np.sin(np.pi/3)),

axis=0 )

# вычисление координат вершин шестиугольника для визуализации карты radius = Stride / (2 * np.cos(np.pi/6))

self.Vertices = np.stack((np.cos(np.pi*2*np.array(range(0,6))/6+np.pi/6),

np.sin(np.pi*2*np.array(range(0,6))/6+np.pi/6)),

axis=0 ) * radius

# координаты вершин шестиугольника для каждого элемента решётки

self.Cells = np.expand_dims(self.Vertices.T, axis=0) + np.expand_dims(self.Centers.T,

axis=1)

МОДУЛЬ MAIN.PY (вычисление рекомендуемого радиуса окрестности активного нейрона для обучения самоорганизующейся карты)

#!/usr/bin/python

from matplotlib.collections import PatchCollection, PolyCollection from matplotlib.patches import Polygon import grid

import matplotlib.pyplot as plt import model import numpy as np import tensorflow as tf

# имена компонент входных данных var_names = [

'executions',

'sharable_mem',

'loaded_versions',

'version_count',

'io_interconnect_bytes',

'io_offload_elig_bytes',

'io_offload_return_bytes',

'physical_read_bytes',

'cell_uncompressed_bytes',

'physical_write_bytes',

'parse_calls',

'px_servers_execs',

'end_of_fetch_count',

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