Введение в архитектуру 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 приведены ниже, и их необходимо понимать для полной структуры.
- Spark Driver
- Исполнители
- Менеджер кластера
- Рабочие узлы
Следующая диаграмма показывает Архитектуру и Компоненты искры:
Рис. Автономный режим архитектуры 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. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -
- Команды Spark Shell
- Apache Hadoop Ecosystem
- Архитектура больших данных
- Что такое Apache