Полная версия
Ситуационно-ориентированные базы данных: polyglot persistence на основе REST-микросервисов
В статье рассматриваются новые возможности, предусмотренные в ситуационно-ориентированных базах данных (СОБД) для реализации микросервисной архитектуры. СОБД – это проект интегратора разнородных данных в рамках подхода polyglot persistence на основе информационного процессора, управляемого встроенной ситуационной моделью. Доступ к разнородным данным организован в СОБД на основе концепции виртуальных документов, которые отображаются на разнородные физические данные. В статье обсуждается микросервисная архитектура, основанная на СОБД, – современный подход, обеспечивающий лучшую масштабируемость и модифицируемость веб-приложений на основе HTTP-запросов. Поставлена задача обработки микросервисом HTTP-запросов в рамках общей концепции виртуальных документов. Для решения задачи введен новый тип виртуального документа, отображаемый на HTTP-запрос, что облегчает микросервису, с одной стороны, доступ к свойствам запроса и прикрепленным к нему данным, а с другой – формирование ответа HTTP-response. В статье обсуждаются способы обработки HTTP-запроса на примере типовой ситуационной модели микросервиса, который ведет таблицу реляционной базы данных на основе источника данных – внешнего веб-сервиса. Детально рассматривается структура ситуационной модели, выполняющей обработку и формирование ответа в зависимости от типа запроса и возникших ситуаций. Приводится пример практической реализации комплекса микросервисов на основе СОБД для мониторинга просмотров студентами образовательных видеороликов на YouTube.