По сценарию Илвы Лундегард и Дхианы Девы

В настоящее время во всем мире существуют сотни миллионов компаний, и ежедневно создаются тысячи новых компаний. Отследить и проанализировать их все чрезвычайно сложно, но у EQT есть секретное оружие — Motherbrain. Давайте взглянем на архитектуру данных платформы Motherbrain, которая использует большие данные и машинное обучение для поддержки различных приложений и сценариев использования в инвестиционной отрасли. Конвейер данных Motherbrain создан с учетом масштабируемости и надежности, чтобы выдерживать большие объемы зашумленных данных.

За кулисами событийной архитектуры Motherbrain

Внешние источники данных

Внешние данные принимаются через пакетные конвейеры, которые очищают, нормализуют и сохраняют данные единым образом. Все конвейеры данных написаны на Apache Beam и работают на Dataflow.

Журналы данных

Чтобы архитектура соответствовала всем типам форматов данных, данные сводятся к небольшим фрагментам информации на уровне атрибутов вместе с метаданными. Затем он сохраняется в BigTable, а сообщение Kafka отправляется для уведомления о наличии новых или обновленных данных. Эта абстракция позволяет сохранять слабосвязанные данные и легко объединять объекты данных в один нижестоящий объект. Это также обеспечивает гибкость при изменении заданий приема или структур сущностей ниже по течению.

Материализаторы

Далее следует то, что EQT Motherbrain называет материализаторами, потоковыми конвейерами, ответственными за повторное объединение сущностей после прослушивания сообщений Kafka. Здесь материализаторам необходимо решить две вещи: (1) что должно войти в сущность и (2) какая информация является наиболее вероятной верной. Может быть противоречивая информация из разных источников, т.е. в одном источнике данных говорится, что компания называется «Vandelay Industries», а в другом — «Vandelay Ind.». Именно здесь Motherbrain нужно принять решение о том, какой из них выбрать.

Основной частью объединения сущностей является хорошее разрешение сущностей, и именно здесь в игру вступает служба сопоставления сущностей. Это сервис онлайн-прогнозирования, реализованный с использованием Scala, Vertex AI, Tensorflow и Elasticsearch. Эта служба отвечает за принятие решения о том, какие данные из разных источников принадлежат друг другу.

Потребители

После создания объектов они отправляются в Kafka для использования другими приложениями. Основным потребителем данных является веб-интерфейс Motherbrain, к которому легко получить доступ через Elasticsearch. Другие потребители — это суперпользователи, в основном команда Motherbrain Labs, которые получают доступ к данным из BigQuery и обычно проводят дополнительный анализ.

Ввод данных пользователем

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

Архитектура Motherbrain, управляемая событиями, поддерживает прогнозы машинного обучения тремя способами.

  1. Motherbrain поддерживает онлайн-прогнозирование, когда требуется разрешение в реальном времени, поскольку потоковые конвейеры и онлайн-пользователи могут запускать службу прогнозирования.
  2. Он также поддерживает потоковые прогнозы, где разрешения требуются только при изменении переменной, влияющей на прогноз компании. Это делается путем прослушивания сообщений Kafka, запуская службу, как только происходит важное изменение.
  3. Наконец, Motherbrain также поддерживает пакетные прогнозы. Часто нет необходимости делать прогнозы в режиме реального времени. Может быть достаточно доставлять свежую обновленную информацию потребителям один раз в день, например. предоставление специалистам по инвестициям актуальных компаний, находящихся в топ-рейтинге согласно алгоритмам Motherbrain, когда они приходят на работу утром.

Прощальные мысли

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

Это сообщение основано на нашем Резюме выступления Heroes of Data