Введение в архитектуру Apache Spark

В этой статье определяются понятия Apache Spark Architecture и его компонентов. Это считается обработкой данных пикового уровня в Apache Software Foundation. В конечном итоге Spark считается еще одной возможностью для Hadoop и Map Reduce.

Spark - это архитектура с открытым исходным кодом с четко определенными компонентами, которые помогают анализировать большой объем данных и работают для распределенных вычислений. Spark написан на Scala с включенными функциями, такими как API, R и имеет расширенный набор библиотек, что облегчает обработку данных. Apache Spark имеет отдельные кластерные вычисления для более быстрого доступа и работает на разных платформах.

Apache Spark обладает широким спектром функций, таких как ускорение ускорения процесса в памяти, адаптация к нескольким языкам программирования, усовершенствованные методы кэширования и поддержка запросов SQL, машинное обучение. Он работает на таких платформах, как операционные системы Microsoft Windows и Linux. Их развертывание говорит, что они могут работать на одной машине и в кластерном режиме.

Apache Spark Architecture

Архитектура Apache spark имеет слабосвязанные компоненты. Spark учитывает главный / рабочий процесс в архитектуре, и все задачи выполняются в верхней части распределенной файловой системы Hadoop. Apache spark использует Hadoop для обработки и хранения данных. Они считаются механизмом обработки данных в памяти и позволяют своим приложениям работать в кластерах Hadoop быстрее, чем в памяти. Обработка в памяти предотвращает сбой дискового ввода-вывода. Spark позволяет разнородной работе работать с одними и теми же данными. Spark делит свои данные на разделы, размер разделенных разделов зависит от заданного источника данных.

Ниже приведены две основные реализации архитектуры Apache Spark:

1. Эластичные распределенные наборы данных (RDD)

Он отвечает за предоставление API для управления кэшированием и секционированием. Это важный набор инструментов для расчета данных. Это помогает в пересчете элементов в случае сбоев и считается неизменными данными и действует как интерфейс. Преобразования и действия - это две операции, выполняемые СДР.

2. Направленный ациклический граф (DAG)

Он формирует последовательность соединения от одного узла к другому. Драйвер преобразует программу в DAG для каждой работы. Эко-система Apache Spark имеет различные компоненты, такие как ядро ​​API, Spark SQL, потоковая обработка и обработка в реальном времени, MLIB и Graph X. Некоторые термины, которые необходимо изучить здесь, - это оболочка Spark, которая помогает в чтении больших объемов данных, контекст Spark - отменить, запустить задание, задание (задание), задание (вычисление)

Компоненты Apache Spark Architecture

Четыре основных компонента Spark приведены ниже, и их необходимо понимать для полной структуры.

  1. Spark Driver
  2. Исполнители
  3. Менеджер кластера
  4. Рабочие узлы

Следующая диаграмма показывает Архитектуру и Компоненты искры:

Рис. Автономный режим архитектуры Apache Spark.

Поток выполнения начинается следующим образом:

1. Искровой водитель

Ответственность водителя заключается в координации задач и работников для управления. Это процесс JVM приложения, который рассматривается как главный узел. Драйвер разбивает искру на задачи и графики для выполнения на исполнителях в кластерах. На диаграмме программы драйвера вызывают основное приложение и создают контекст искры (действует как шлюз), совместно отслеживают работу, выполняемую в данном кластере, и подключаются к кластеру Spark. Все функции и команды выполняются через контекст искры.

Контекст Spark - это запись для каждого сеанса. Драйвер Spark имеет больше компонентов для выполнения заданий в кластерах. Кластеры Spark подключаются к различным типам диспетчеров кластеров и одновременно получают контекстные узлы для выполнения и хранения данных. В кластере, когда мы выполняем процесс, их работа подразделяется на этапы с этапами усиления на запланированные задачи.

2. Исполнитель

Он отвечает за выполнение задания и хранит данные в кеше. На самом начальном этапе исполнители регистрируются у водителей. Этот исполнитель имеет несколько временных интервалов для одновременного запуска приложения. Исполнители выполняют процесс чтения / записи на внешних источниках. Исполнитель запускает задание, когда оно загрузило данные, и они были удалены в режиме ожидания. Исполнитель включается динамическим размещением, и они постоянно включаются и исключаются в зависимости от продолжительности. Во время выполнения заданий исполнители контролируются программой драйвера. Исполнители выполняют задачу пользователей в процессе Java.

3. Диспетчер кластеров

Это помогает в управлении кластерами, которые имеют одного хозяина и число ведомых. Существует два типа менеджеров кластеров, таких как YARN и автономные, которые управляются Resource Manager и Node. Работа кластера в автономном режиме требует, чтобы Spark Master и рабочий узел выполняли свои роли. Ответственность менеджера кластера состоит в том, чтобы распределять ресурсы и выполнять задачу,

4. Рабочие узлы

Они являются подчиненными узлами; основная ответственность заключается в выполнении задач, а их выходные данные возвращаются в контекст искры. Они общаются с главным узлом о доступности ресурсов. Контекст Spark выполняет его и выдает рабочим узлам. Каждому рабочему узлу назначается один искровой рабочий для мониторинга. Они делают вычисления очень просто, увеличивая рабочие узлы (от 1 до n рабочих), так что все задачи выполняются параллельно путем разделения работы на разделы в нескольких системах. Другой элемент задачи считается единицей работы и назначается одному исполнителю, для каждого раздела свечей запускается одна задача.

Вывод

Таким образом, понимание архитектуры Apache Spark означает, как легко реализовать большие данные. В конечном итоге мы узнали об их доступности и роли компонентов, что очень полезно для кластерных вычислений и технологии больших данных. Spark вычисляет желаемые результаты проще и предпочтительнее при пакетной обработке.

Отличительные особенности Spark, такие как наборы данных и фреймы данных, помогают оптимизировать пользовательский код. Такая важная функция, как механизм SQL, повышает скорость выполнения и делает это программное обеспечение универсальным. Поэтому мы видели, как искровые приложения выполняются локально или распределены в кластере. Apache Spark считается отличным дополнением для широкого спектра отраслей, таких как большие данные. Подводя итог, спарк помогает в решении сложных вычислительных задач.

Рекомендуемые статьи

Это руководство по архитектуре Apache Spark. Здесь мы обсуждаем Введение в архитектуру Apache Spark, а также компоненты и структурную схему Apache Spark. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Команды Spark Shell
  2. Apache Hadoop Ecosystem
  3. Архитектура больших данных
  4. Что такое Apache