Масштабируемое программное средство индексации социальных сетей
Основные задачи:
исследование инструментов хранения больших объемов информации с высокой скоростью обработки операций
разработка адаптивного алгоритма формирования данных для системы индексирования информации о пользователях социальной сети и выполнения запросов к базе данных, включающего сбор аналитической информации
В мире существуют исследования, которые изучают зависимость поведения людей от различных событий, их удаленности от привычной среды обитания и т.д. Эти исследования помогают, как частным компаниям для изучения рынка, так и государствам для таких целей как предотвращение преступлений, профилактика нарушений и мониторинг общественных настроений. В России данное направление не развито. Анализ в реальном времени проводят лишь компании, которые ставят перед собой маркетинговые цели. Актуальность заключается в потребности в надежном и быстром инструменте индексации пользователей социальных сетей, обеспечивающий возможность анализировать события обсуждаемые в социальных сетях в режиме реального времени.
Современные технологии хранения данных обеспечили практическую возможность накопления огромных массивов информации, что позволило качественно изменить отношение к результатам анализа хранимой информации. Методики поддержания целостности данных реляционных БД требуют дополнительных временных ресурсов, что при значительных объемах и слабой структурированности данных делает использование реляционных баз данных затруднительным в системах реального времени. Было принято решение использовать нереляционные базы данных, а именно СУБД MongoDB, выбор которой обусловлен высоким уровнем технической поддержки, открытым исходным кодом, широким спектром API, активным сообществом разработчиков, поддерживаемых крупнейшими компаниями.
Для извлечения данных, социальными сетями разработаны веб API, которые определяют интерфейс взаимодействия между социальной сетью и приложениями, которые запрашивают данные. Исследования показали, что большинство социальных сетей прибегают к ограничению трафика во время активного использования одним IP ее публичного API. Для обхода этого ограничения в рамках разработки было применено горизонтальное масштабирование. Выбор данного метода обусловлен высокой степенью надежности, достигаемого за счет использования нескольких независимых вычислительных узлов, выход любого из которых не ведет к недееспособности системы в целом, а также возможность минимизировать влияние сторонних сервисов на итоговый продукт.
Продукт предназначен для сбора, обработки и транспортировки с целью хранения данных в нереляционной базе данных. Программный модуль позволяет эффективно получать данные из социальной сети, преобразовывать их для дальнейшей обработки и отправлять для хранения в СУБД MongoDB.
После создания данного ПО стало возможным хранить большое количество данных, поддерживать их актуальность, регулировать скорость извлечения и обновления данных, а также регулировать стоимость данных операций в зависимости от целей конечного пользователя.
Премущества:
-
Разработанное ПО предполагает возможность установки как на сервера пользователя, так и с использованием облачных технологий;
-
Из собранных данных стало возможным получать выборки, отфильтрованные по городам, регионам, социальным слоям для дальнейшей их обработки;
-
Выбранная СУБД имеет встроенную возможность кластеризации узлов с использованием сервера распределения нагрузки и рабочих узлов - шардов;
-
Пользователь сам решает, каким образом будут храниться собранные данные, что обеспечивает свободу действий над ними и независимость от таких факторов, как географическое расположение;
-
Все данные хранятся в легко считываемом формате JSON, что позволяет легко разработать средства работы с ними.
Идеи для дополнительных бизнес услуг:
-
создание резервных копий данных;
-
разграничение прав доступа;
-
приоритетная служба поддержки;
-
шифрование хранимых данных.
ГАГАРИНА Л.Г., КОТОВ К.С. СИСТЕМНЫЙ ПОДХОД К ПОСТРОЕНИЮ ПРОГРАММНЫХ КОМПЛЕКСОВ ДЛЯ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ. ЧАСТЬ I // ОБОРОННЫЙ КОМПЛЕКС - НАУЧНО-ТЕХНИЧЕСКОМУ ПРОГРЕССУ РОССИИ . 2008. №4. С. 64-73.
Федоров А.Р, Васильчук К.С., Дорофеев А.В. Создание масштабируемых средств для решения задач анализа больших объемов данных на основе системы управления базы данных MongoDB // Вестник Поволжского государственного технологического университета. Серия: Радиотехнические и инфокоммуникационные системы. - 2016. - №29(1). - с55-63 (ВАК).