Microsoft анонсировала Drasi (Data Change Processing), новую платформу обработки изменений данных с открытым исходным кодом. Она позволит разработчикам автоматизировать интеллектуальные реакции в динамических системах. Вместо копирования данных в центральное озеро данных или периодического запроса источников Drasi отслеживает изменения, наблюдая за событиями в журналах и лентах изменений.
При разработке Drasi использовали lowcode-подход на основе запросов, что позволяет разработчикам писать сложные графовые запросы для определения сложных правил, описывающих типы изменений, которые они хотят обнаружить. Затем платформа определяет, вызывают ли какие-либо изменения обновления наборов результатов. При их обнаружении Drasi выполняет контекстно-зависимые реакции. Весь этот процесс выполняется с использованием трёх компонентов: источников (Sources), непрерывных запросов (Continuous Queries) и реакций (Reactions).
Sources подключаются к различным источникам данных в системах, непрерывно наблюдая критические изменения. Они отслеживают журналы приложений, обновления баз данных или системные метрики и собирают соответствующую информацию в режиме реального времени.
Drasi использует Continuous Queries вместо ручных, постоянно оценивая их на основе предопределённых критериев. Эти запросы, написанные на языке Cypher, могут интегрировать данные из нескольких источников без необходимости предварительного сопоставления.
Когда зафиксированы изменения, Drasi запускает Reactions, которые могут отправлять оповещения, обновлять другие системы или выполнять шаги по исправлениям.
Continuous Queries пишутся как декларативные графовые запросы с использованием языка Cypher. Это позволяет создавать один запрос для описания изменений, которые нужно обнаружить, и данных, которые требуется охватить.
На данный момент Drasi поддерживает источники и реакции PostgreSQL, Microsoft Dataverse и Azure Event Grid. Организации смогут создавать собственные интеграции.
В этом решении один экземпляр Drasi использует два отдельных источника: один для Microsoft Dynamics 365 для сбора записей о техническом обслуживании, а второй для Azure Event Hubs для подключения к потокам телеметрии. Два непрерывных запроса оценивают события по критериям для предиктивного планового обслуживания и критических оповещений. На основе наборов результатов непрерывных запросов одна реакция для Dynamics 365 Field Service отправляет информацию для создания оповещения IoT о критических событиях или уведомления администратора автопарка о том, что транспортное средство скоро достигнет контрольной точки обслуживания:
Drasi доступен по лицензии Apache 2.0, что позволяет использовать платформу как в коммерческих, так и в некоммерческих проектах.
Источник: habr.com