Потоковая передача данных с помощью AKS
Идеи решения
В этой статье описывается идея решения. Ваш архитектор облака может использовать это руководство, чтобы визуализировать основные компоненты для типичной реализации этой архитектуры. Используйте эту статью в качестве отправной точки для разработки хорошо спроектированного решения, которое соответствует конкретным требованиям рабочей нагрузки.
В этой статье представлено решение для быстрого обработки и анализа большого объема потоковых данных с устройств с помощью Служба Azure Kubernetes (AKS).
Apache®, Apache Kafka и Apache Spark являются зарегистрированными товарными знаками или товарными знаками Apache Software Foundation в США и /или других странах. Использование этих меток не подразумевает подтверждения от Apache Software Foundation. Splunk является зарегистрированным товарным знаком Cisco.
Архитектура
Скачайте файл Visio для этой архитектуры.
Поток данных
- Датчики создают данные и передают их в Azure Управление API.
- Кластер AKS запускает микрослужбы, развернутые в качестве контейнеров за сеткой службы. Контейнеры создаются с помощью процесса DevOps. Образы контейнеров хранятся в Реестр контейнеров Azure.
- Служба приема в AKS хранит данные в Azure Cosmos DB.
- Асинхронно служба анализа в AKS получает данные и передает его в Apache Kafka в Azure HDInsight.
- Специалисты по обработке и анализу данных используют модели машинного обучения в Azure HDInsights и платформе Splunk.
- Служба обработки в AKS обрабатывает данные и сохраняет результаты База данных Azure для PostgreSQL. Служба также кэширует данные в Кэш Azure для Redis.
- Веб-приложение, работающее в службе приложение Azure, создает визуализации результатов.
Компоненты
AKS — это управляемая служба оркестрации контейнеров Kubernetes. В этой архитектуре он размещает контейнеризованные микрослужбы, которые обрабатывают, обрабатывают и направляют потоковую передачу данных из датчиков в различные уровни хранилища и аналитики.
Apache Kafka — это распределенная платформа потоковой передачи событий, предназначенная для высокопроизводительных веб-каналов данных с низкой задержкой. В этой архитектуре он получает данные из микрослужб AKS в режиме реального времени и передает их в Azure HDInsight для крупномасштабной аналитики.
Управление API — это шлюз для публикации, защиты и анализа API. В этой архитектуре он получает входящие данные от датчиков и направляет его в кластер AKS для обработки.
Служба приложений — это полностью управляемая платформа для создания и размещения веб-приложений. В этой архитектуре он запускает веб-приложение, которое визуализирует обработанные результаты из базы данных PostgreSQL.
Кэш Azure для Redis — это хранилище данных в памяти, которое поддерживает быстрый доступ к данным. В этой архитектуре он временно сохраняет обработанные данные из микрослужб AKS для ускорения доступа и уменьшения задержки.
Azure Cosmos DB — это глобально распределенная служба базы данных NoSQL. В этой архитектуре хранятся полученные данные из микрослужб AKS.
База данных Azure для PostgreSQL — это управляемая служба реляционных баз данных на основе PostgreSQL. В этой архитектуре он сохраняет обработанные результаты микрослужб AKS для подчиненных отчетов и визуализации.
Azure HDInsight — это облачная служба для аналитики больших данных с помощью платформ с открытым кодом. В этой архитектуре выполняется задание Apache Spark для анализа потоковых данных из Kafka и поддерживает рабочие нагрузки машинного обучения.
Azure Pipelines — это служба непрерывной интеграции и непрерывной доставки (CI/CD) в Azure DevOps. В этой архитектуре он создает и развертывает контейнерные микрослужбы в AKS, чтобы включить автоматизированные и повторяемые рабочие процессы доставки.
Реестр контейнеров — это управляемая служба реестра контейнеров Docker. В этой архитектуре он хранит образы контейнеров, содержащие микрослужбы.
Splunk — это платформа аналитики данных и визуализации для созданных компьютером данных. В этой архитектуре он анализирует данные в режиме реального времени из Azure HDInsight и создает визуальные панели мониторинга для бизнес-аналитики.
Подробности сценария
Это решение хорошо подходит для сценария, который включает миллионы точек данных, где источники данных включают устройства, датчики и транспортные средства Интернета вещей. В такой ситуации обработка большого объема данных является одной проблемой. Быстрый анализ данных является еще одной сложной задачей, так как организации стремятся получить представление о сложных сценариях.
Контейнерные микрослужбы в AKS образуют ключевую часть решения. Эти автономные службы обрабатывают и обрабатывают поток данных в режиме реального времени. Они также масштабируются по мере необходимости. Переносимость контейнеров позволяет службам выполняться в разных средах и обрабатывать данные из нескольких источников. Для разработки и развертывания микрослужб используются DevOps и непрерывная интеграция и непрерывная доставка (CI/CD). Эти подходы сокращают цикл разработки.
Для хранения данных приема решение использует Azure Cosmos DB. Эта база данных эластично масштабирует пропускную способность и хранилище, что делает его хорошим выбором для больших объемов данных.
Решение также использует Apache Kafka. Эта платформа потоковой передачи с низкой задержкой обрабатывает веб-каналы данных в режиме реального времени с чрезвычайно высокой скоростью.
Другим ключевым компонентом решения является Azure HDInsight, которая является управляемой облачной службой, которая позволяет эффективно обрабатывать большие объемы данных с помощью наиболее популярных платформ открытый код. Azure HDInsight упрощает выполнение платформ больших данных в большом объеме и скорости при использовании Apache Spark в Azure. Splunk помогает в процессе анализа данных. Splunk создает визуализации из данных в режиме реального времени и предоставляет бизнес-аналитику.
Потенциальные варианты использования
Это решение обеспечивает следующие преимущества:
- Безопасность транспортных средств, особенно в автомобильной промышленности
- Обслуживание клиентов в розничной торговле и других отраслях
- Облачные решения для здравоохранения
- Финансовые технологические решения в финансовой отрасли
Следующие шаги
Документация по продукту:
- Сведения о Кэш Azure для Redis
- Что такое Azure Управление API?
- Обзор Службы приложений Azure
- Служба Azure Kubernetes
- Общие сведения о Реестр контейнеров Azure
- Вас приветствует Azure Cosmos DB
- Что такое База данных Azure для PostgreSQL?
- Что такое Azure HDInsight?
- Что такое Azure Pipelines?
Модули обучения Майкрософт:
- Создание и хранение образов контейнеров с помощью Реестра контейнеров Azure
- Настройка планов службы приложение Azure
- Работа с Azure Cosmos DB
- Создание и подключение к База данных Azure для PostgreSQL
- Разработка для Кэш Azure для Redis
- Изучение Управление API
- Введение в Azure HDInsight