Тема: Реализация пакета аналитических функций в PostgreSQL. Алгоритмы кластеризации
Закажите новую по вашим требованиям
Представленный материал является образцом учебного исследования, примером структуры и содержания учебного исследования по заявленной теме. Размещён исключительно в информационных и ознакомительных целях.
Workspay.ru оказывает информационные услуги по сбору, обработке и структурированию материалов в соответствии с требованиями заказчика.
Размещение материала не означает публикацию произведения впервые и не предполагает передачу исключительных авторских прав третьим лицам.
Материал не предназначен для дословной сдачи в образовательные организации и требует самостоятельной переработки с соблюдением законодательства Российской Федерации об авторском праве и принципов академической добросовестности.
Авторские права на исходные материалы принадлежат их законным правообладателям. В случае возникновения вопросов, связанных с размещённым материалом, просим направить обращение через форму обратной связи.
📋 Содержание
Введение
Постановка задач
Обзор существующих решений.
Выбор алгоритмов для реализации
Реализация
6.1. Развертывание схемы
6.2. Метод кластеризации - K-means
6.3. Метод кластеризации – K-medians
6.4. Метод кластеризации – DBSCAN
6.5. Метод кластеризации FOREL
6.6. Метод кластеризации – Aglomerative
6.7. Метрика оценки - Silhouette
6.8. Метрика оценки – Dunn
6.9. Метрика оценки – DB
6.10. Прочие функции.
Визуализация результатов
Заключение
Список литературы
📖 Введение
Практически все сферы деятельности человека, так или иначе, связаны с различными видами хранения и обработки данных. Сложно представить такие направления как: медицина, экономика, торговля и многие другие без понятия больших данных. Но сами по себе данные не несут в себе такой ценности как умение грамотно анализировать их. Аналитические методы позволяют человеку применять различные математические методы для выявления знаний из данных, и впоследствии использовать полученную информацию для оптимизации работы, выявления угроз и опасностей, а также выявления направлений в развитии бизнеса. Все это позволяет людям не только избежать огромных финансовых затрат, но и сократить временные и ресурсные аспекты решения возникающих проблем.
Так как наиболее распространенным способом хранения и обработки данных являются базы данных, то и большинство аналитических методов основано на обработке больших баз данных с целью нахождения, как заранее известных результатов, так и выявлением новых уникальных закономерностей. В связи с этим многие из основных производителей систем управления базами данных, такие как Oracle и Microsoft работают над внедрением в свои продукты пакетов аналитических функций и процедур, обладающих высоким спросом, что дает возможность каждому пользователю получить доступ ко многим мощным методам анализа данных сразу после установки. Однако не все СУБД обладают достаточным количеством ресурсов для разработки подобных программных решений. Одной из таких СУБД является PostgreSQL, активно развивающейся и все чаще в последнее время внедряемой многими российскими компаниями в качестве основного продукта для разработки баз данных.
Наряду с имеющимися недостатками, один из которых был упомянут выше, PostgreSQL обладает и рядом преимуществ, основным из которых является ее доступность, благодаря чему многие компании и аналитики предпочитают использовать в своей работе именно ее. Однако многие из них сталкиваются с невозможностью полностью реализовать свои потребности функционалом, предлагаемым после стандартной установки системы. В такие моменты и возникает потребность поиска сторонних решений или же смена среды разработки. Стоит отметить что на сегодняшний день существует ряд методов способных в какой-то мере решить возникающие проблемы, однако многие из них, для реализации поставленных задач, используют сторонние программные продукты, встраиваемые в PostgreSQL, что, в некоторых случаях может приводить к непредсказуемому поведению или возникновению конфликтных ситуаций.
Кроме того, рядовому пользователю незнакомому с тем, как функционирует вспомогательный продукт, может доставить ряд неудобств ознакомление с принципом его работы. В связи с вышесказанным возникает необходимость реализации пакета, способного приблизить PostgreSQL к коммерческим продуктам, используя при этом лишь средства, предоставленные самой СУБД.
✅ Заключение
Позднее на языке PL/pgSQL был разработан пакет аналитических функций, разворачиваемый в СУБД PostgreSQL и, включающий в себя наравне с другими функции, реализующие такие алгоритмы как: K-means, K-medians, DBScan, Агломеративный алгоритм кластеризации, FOREL а также алгоритмы оценки качества кластеризации по метрикам Silhouette, Dunn и DB.
Результат разработки был опубликован на портале GitHub и доступен по ссылке https://github.com/Twicelab/anfun. К коду приложены файлы спецификации и инструкции по установке. Метод разработки продукта позволяет масштабировать его и добавлять функциональность в будущем, расширяя возможности и оптимизируя его работу.



