Преглед на искровите компоненти

Представете си, че имате 1000 задачи под ръка и много малко време, за да ги завършите. Някой ви предлага помощ, като предоставя ресурси, които могат да свалят някои задачи от вашата ръка и да ги правите паралелно с вас, така че всички задачи да бъдат завършени навреме. Че някой е Spark за вас в изчислителен смисъл. Apache Spark е отворен код и разпределена клъстерна изчислителна рамка за Big Data и осигурява оптимизиран подход за извършване на анализи на големи масиви данни. Той работи 100 пъти по-бързо от Hadoop и предоставя различни библиотеки за различни цели като извършване на SQL операции, ML, поточно предаване, обработка на графики и др. По-долу ще разгледаме подробно различните компоненти на искрата.

Най-важните компоненти на искрата

В момента в Spark Ecosystem имаме 6 компонента, които са Spark Core, Spark SQL, Spark Streaming, Spark MLlib, Spark GraphX ​​и SparkR. Нека да видим какво прави всеки от тези компоненти.

1. Spark Core

Spark Core е, както подсказва името, основната единица на Spark процеса. Той се грижи за планирането на задачите, възстановяването на неизправности, управлението на паметта и операциите за вход-изход и др. Мислете за това като нещо подобно на процесора на компютър. Той поддържа езици за програмиране като Java, Scala, Python и R и предоставя API за съответните езици, чрез които можете да изградите вашата ETL задача или да правите анализи. Всички останали компоненти на Spark имат свои собствени API, които са изградени върху Spark Core. Поради своите паралелни възможности за обработка и изчисление в паметта, Spark може да се справи с всякакъв вид натоварване.

Spark Core се предлага със специален вид структура от данни, наречена RDD (Resilient Distributed Dataset), която разпределя данните във всички възли в клъстера. RDD работят по парадигма за мързелива оценка, където изчислението се запаметява и се изпълнява само когато е необходимо. Това помага за оптимизиране на процеса чрез изчисляване само на необходимите обекти.

2. Spark SQL

Ако сте работили с бази данни, разбирате важността на SQL. Не би ли било изключително завладяващо, ако един и същ SQL код работи N пъти по-бързо дори при по-голям набор данни? Spark SQL ви помага да манипулирате данните на Spark, използвайки SQL. Той поддържа JDBC и ODBC връзки, които установяват връзка между Java обекти и съществуващи бази данни, хранилища на данни и инструменти за бизнес разузнаване. Spark включва нещо, наречено Dataframes, които са структурирано събиране на данни под формата на колони и редове.

Spark ви позволява да работите върху тези данни с SQL. Кадрите на данни са еквивалентни на релационни таблици и те могат да бъдат изградени от всякакви външни бази данни, структурирани файлове или вече съществуващи RDD. Dataframes имат всички функции на RDD като неизменна, еластична, в паметта, но с допълнителна функция да бъдат структурирани и лесни за работа. API за Dataframe е наличен и в Scala, Python, R и Java.

3. Искрено стрийминг

Предаването на данни е техника, при която се обработва непрекъснат поток от данни в реално време. Тя изисква рамка, която предлага ниска латентност за анализ. Spark Streaming осигурява това, а също така и висока производителност, отказоустойчив и мащабируем API за обработка на данни в реално време. Тя се абстрахира от Discretized Stream (DStream), който представлява поток от данни, разделен на малки партиди. DStream е създаден на RDD, поради което Spark Streaming работи безпроблемно с други компоненти на искрата. Някои от най-забележителните потребители на Spark.

Поток е Netflix, Pinterest и Uber. Искровото предаване може да бъде интегрирано с Apache Kafka, което е платформа за отделяне и буфериране на входни потоци. Kafka действа като централен център за потоци в реално време, които се обработват с помощта на алгоритми в Spark Streaming.

4. Искри MLLib

Основната атракция на Spark е мащабното изчисляване на изчисленията и тази функция е най-важното изискване за всеки проект за машинно обучение. Spark MLLib е компонентът за машинно обучение на Spark, който съдържа алгоритми за машинно обучение като класификация, регресия, групиране и съвместно филтриране. Той също така предлага място за извличане на функции, намаляване на размерите, трансформация и т.н.

Можете също да запазите вашите модели и да ги стартирате на по-големи набори от данни, без да се притеснявате от проблеми с оразмеряването. Той също така съдържа помощни програми за линейна алгебра, статистика и работа с данни. Поради обработката на паметта на Spark, толерантността на грешките, мащабируемостта и лекотата на програмиране, с помощта на тази библиотека можете лесно да стартирате итеративни ML алгоритми.

5. GraphX

Graph Analytics основно определя връзките между обекти в графиката, например най-краткото разстояние между две точки. Това помага за оптимизиране на маршрута. API Spark GraphX ​​помага при изчисляването на графика и паралелите на графика. Опростява анализа на графиката и го прави по-бърз и по-надежден. Едно от основните и добре познати приложения на графичната анализа е Google Maps.

Той открива разстоянието между две места и дава оптимално предложение за маршрут. Друг пример могат да бъдат предложенията на приятел на Facebook. GraphX ​​работи както с графики, така и с изчисления. Spark предлага набор от графични алгоритми като ранг на страници, свързани компоненти, разпространение на етикети, SVD ++, силно свързани компоненти и брой на триъгълници.

6. SparkR

R е най-широко използваният статистически език, който съдържа повече от 10 000 пакета за различни цели. Той използва API за рамки за данни, което го прави удобен за работа, а също така осигурява мощни визуализации на учените за данни, за да анализират подробно своите данни. R обаче не поддържа паралелна обработка и е ограничена до обема на паметта, наличен в една машина. Тук SparkR влиза в картината.

Spark разработи пакет, известен като SparkR, който решава въпроса за мащабируемостта на R. Той се основава на разпределени рамки от данни и също така предоставя същия синтаксис като разпределения процесор на двигателя на R. Spark и несравнимата интерактивност, пакети и визуализация на R се комбинират, за да дадат на учените данни какво те искат за своите анализи.

заключение

Тъй като Spark е рамка с общо предназначение, тя се оказва в широк спектър от приложения. Spark се използва широко в повечето приложения за големи данни поради своята производителност и надеждност. Всички тези компоненти на Spark се актуализират с нови функции във всяко ново издание и правят живота ни по-лесен.

Препоръчителни статии

Това е ръководство за искровите компоненти. Тук обсъждаме прегледа и топ 6 компоненти на искра с подробно обяснение. Можете също да разгледате следните статии, за да научите повече -

  1. Топ 5 важни алтернативи на кошера
  2. Talend Отворени компоненти на студиото / инструменти
  3. Топ 6 компоненти на IoT Ecosystem
  4. Какво представлява интеграцията на данни на Talend с ползите?

Категория: