Поделиться через


Что такое Apache Flink® в Azure HDInsight в AKS? (Предварительная версия)

Примечание.

Мы отставим Azure HDInsight в AKS 31 января 2025 г. До 31 января 2025 г. необходимо перенести рабочие нагрузки в Microsoft Fabric или эквивалентный продукт Azure, чтобы избежать резкого прекращения рабочих нагрузок. Оставшиеся кластеры в подписке будут остановлены и удалены из узла.

До даты выхода на пенсию будет доступна только базовая поддержка.

Внимание

Эта функция в настоящее время доступна для предварительного ознакомления. Дополнительные условия использования для предварительных версий Microsoft Azure включают более юридические термины, применимые к функциям Azure, которые находятся в бета-версии, в предварительной версии или в противном случае еще не выпущены в общую доступность. Сведения об этой конкретной предварительной версии см. в статье Azure HDInsight в предварительной версии AKS. Для вопросов или предложений функций отправьте запрос на AskHDInsight с подробными сведениями и следуйте за нами для получения дополнительных обновлений в сообществе Azure HDInsight.

Apache Flink — это платформа и распределенный обработчик обработки для вычислений с отслеживанием состояния по несвязанным и привязанным потокам данных. Flink был разработан для выполнения во всех общих средах кластера, выполнения вычислений и приложений потоковой передачи с отслеживанием состояния на скорости в памяти и в любом масштабе. Приложения параллельно выполняются в тысячи задач, распределенных и одновременно выполняемых в кластере. Поэтому приложение может использовать неограниченное количество виртуальных ЦП, основной памяти, дискового и сетевого ввода-вывода. Кроме того, Flink легко поддерживает состояние большого приложения. Его асинхронный и добавочный алгоритм контрольных точек обеспечивает минимальное влияние на задержки обработки при обеспечении точной согласованности состояния.

Apache Flink — это масштабируемый модуль аналитики для потоковой обработки.

Ниже приведены некоторые ключевые функции, которые предлагает Flink:

  • Операции с привязанными и несвязанными потоками
  • Производительность памяти
  • Возможность потоковой передачи и пакетных вычислений
  • Низкая задержка, операции высокой пропускной способности
  • Точно после обработки
  • Высокий уровень доступности
  • Состояние и отказоустойчивость
  • Полностью совместим с экосистемой Hadoop
  • Унифицированные API SQL для потокового и пакетного пакетов

Схема архитектуры Flink.

Apache Flink — отличный выбор для разработки и запуска различных типов приложений из-за его обширного набора функций. Функции Flink включают поддержку потоковой и пакетной обработки, сложное управление состоянием, семантику обработки событий и точно один раз гарантии согласованности для состояния. Flink не имеет единой точки сбоя. Flink был доказано масштабировать до тысяч ядер и терабайтов состояния приложения, обеспечивает высокую пропускную способность и низкую задержку, а также обеспечивает некоторые из самых требовательных приложений потоковой обработки в мире.

  • Обнаружение мошенничества: Flink можно использовать для обнаружения мошеннических транзакций или действий в режиме реального времени путем применения сложных правил и моделей машинного обучения для потоковой передачи данных.
  • Обнаружение аномалий: Flink может использоваться для выявления вылитых или ненормальных шаблонов потоковой передачи данных, таких как чтение датчиков, сетевой трафик или поведение пользователя.
  • Оповещение на основе правил: Flink можно использовать для активации оповещений или уведомлений на основе предопределенных условий или пороговых значений потоковых данных, таких как температура, давление или цены на акции.
  • Мониторинг бизнес-процессов: Flink можно использовать для отслеживания и анализа состояния и производительности бизнес-процессов или рабочих процессов в режиме реального времени, таких как выполнение заказов, доставка или обслуживание клиентов.
  • Веб-приложение (социальная сеть): Flink можно использовать для работы веб-приложений, требующих обработки данных, созданных пользователем в режиме реального времени, таких как сообщения, например сообщения, комментарии или рекомендации.

Дополнительные сведения о распространенных вариантах использования, описанных в вариантах использования Apache Flink

Кластеры Apache Flink в HDInsight в AKS — это полностью управляемая служба. Ниже перечислены преимущества создания кластера Flink в HDInsight в AKS.

Возможность Description
Простота создания Вы можете создать новый кластер Flink в HDInsight в минутах с помощью портал Azure, Azure PowerShell или пакета SDK. См. статью "Начало работы с кластером Apache Flink" в HDInsight в AKS.
Простота использования Кластеры Flink в HDInsight в AKS включают управление конфигурацией на основе портала и масштабирование. Помимо этого с API управления заданиями, вы используете REST API или портал Azure для управления заданиями.
Интерфейсы REST API Кластеры Flink в HDInsight в AKS включают API управления заданиями, метод отправки заданий Flink на основе REST API для удаленной отправки заданий и мониторинга заданий на портал Azure.
Тип развертывания Flink может выполнять приложения в режиме сеанса или в режиме приложения. В настоящее время HDInsight в AKS поддерживает только кластеры сеансов. В кластере сеансов можно выполнять несколько заданий Flink. Режим приложения находится в стратегии hdInsight в кластерах AKS
Поддержка хранилища метаданных Кластеры Flink в HDInsight в AKS могут поддерживать каталоги с хранилищем метаданных Hive в разных открытых форматах файлов с удаленными контрольными точками для Azure Data Lake Storage 2-го поколения.
Поддержка для службы хранилища Azure Кластеры Flink в HDInsight могут использовать Azure Data Lake Storage 2-го поколения в качестве приемника файлов. Дополнительные сведения о Data Lake Storage 2-го поколения см. в этой статье.
Интеграция со службами Azure Кластер Flink в HDInsight в AKS поставляется с интеграцией с Kafka вместе с Центры событий Azure и Azure HDInsight. Вы можете создавать приложения потоковой передачи с помощью Центров событий или HDInsight.
Адаптируемость HDInsight в AKS позволяет масштабировать узлы кластера Flink на основе расписания с помощью функции автомасштабирования. См. статью "Автоматическое масштабирование Azure HDInsight" в кластерах AKS.
Серверная часть состояния HDInsight в AKS использует RocksDB в качестве stateBackend по умолчанию. RocksDB — это встраиваемое хранилище сохраняемых значений ключей для быстрого хранения.
Контрольные точки Контрольная точка включена в HDInsight в кластерах AKS по умолчанию. Параметры по умолчанию в HDInsight в AKS поддерживают последние пять контрольных точек в постоянном хранилище. В случае сбоя задания задание может быть перезапущено с последней контрольной точки.
Добавочные контрольные точки RocksDB поддерживает добавочные контрольные точки. Мы рекомендуем использовать добавочные контрольные точки для большого состояния, необходимо включить эту функцию вручную. Если приложение не переопределяет этот параметр в коде, параметр по умолчанию flink-conf.yaml: state.backend.incremental: true включает добавочные контрольные точки. Эта инструкция имеет значение true по умолчанию. Можно также настроить это значение непосредственно в коде (переопределяет конфигурацию по умолчанию). EmbeddedRocksDBStateBackend` backend = new `EmbeddedRocksDBStateBackend(true); По умолчанию мы сохраняем последние пять контрольных точек в настроенном dir контрольных точках. Это значение можно изменить, изменив конфигурацию в разделе управления конфигурацией. state.checkpoints.num-retained: 5

Кластеры Apache Flink в HDInsight в AKS включают следующие компоненты, они доступны в кластерах по умолчанию.

Ознакомьтесь с схемой развития о том, что будет в ближайшее время!

Flink планирует задания с помощью трех распределенных компонентов, диспетчера заданий, диспетчера задач и клиента задания, которые задаются в шаблоне "Лидер-последователь".

Задание Flink: задание или программа Flink состоит из нескольких задач. Задачи — это базовая единица выполнения в Flink. Каждая задача Flink имеет несколько экземпляров в зависимости от уровня параллелизма, и каждый экземпляр выполняется в TaskManager.

Диспетчер заданий: диспетчер заданий выступает в качестве планировщика и планирует задачи в диспетчерах задач.

Диспетчер задач: диспетчер задач поставляется с одним или несколькими слотами для параллельного выполнения задач.

Клиент задания: клиент задания взаимодействует с диспетчером заданий для отправки заданий Flink

Веб-интерфейс Flink: Flink предоставляет веб-интерфейс для проверки, мониторинга и отладки запущенных приложений.

Схема процесса Flink, показывающая, как работают задания, диспетчер заданий, диспетчер задач и клиент задания.

Справочные материалы