Въведение в искровото предаване

Apache Spark Streaming е един от основните съществени компоненти на Apache Spark, който е обработка в реално време на полезна програма за данни, която се използва за поточно предаване на данни в реално време, за разлика от традиционните пакетни задания Hadoop, които са били използвани за изпълнение на партидни задачи вместо това на поточно предаване на данни в реално време. Той използва възможностите за бързо планиране на ядрото Spark, за да извършва анализи за бързо поточно искра, което по същество включва поглъщане на данните под формата на микро и мини партиди за извършване на RDD трансформации върху тези набори данни в определен период от време. Потокът Apache Spark е предназначен да консумира от много възходящи потоци, като по този начин завършва тръбопровода като тези като Apache Kafka, Flume, RabbitMQ, ZeroMQ, Kinesis, TCP / IP гнезда, Twitter и др. Структурираните набори от данни, които са достъпни в Spark 2. x + версиите се използват за структурирана стрийминг.

Как работи Spark Streaming?

  • В случай на Spark Streaming потоците от данни се разделят на фиксирани партиди, наречени също като DStreams, което е вътрешно фиксирана последователност от броя на RDDs. Следователно RDD се обработват като се използва Spark API и резултатите, които се връщат, се намират на партиди. Определените поток операции, които са или състояния, или състояния, също се превръщат в изходни операции, входни DStream операции, както и приемници. Тези Dstreams са основното ниво на абстракция, осигурено от Apache Spark streaming, което е непрекъснат поток от Spark RDD.
  • Той също така предоставя възможности за толерантност на отказите да се използва за Dstreams, доста сходни с RDDs, стига копието на данните да е достъпно и следователно всяко състояние да бъде преизчислено или върнато в първоначалното състояние, като се използва графика на линия на Spark през набор от RDD. Тук трябва да се помисли, че Dstreams се използва за превеждане на основните операции върху техния основен набор от RDD. Тези преобразувания на базата на RDD се извършват и изчисляват от Spark Engine. Операциите с Dstream се използват, за да предоставят основното ниво на детайли и да дадат на разработчика високо ниво на API за целите на развитието.

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

Има различни причини, поради които използването на Spark streaming е допълнително предимство. Ще обсъдим някои от тях в нашия пост тук.

  1. Унификация на поточни, пакетни и интерактивни натоварвания: Наборите от данни могат лесно да бъдат интегрирани и използвани с всеки от работните натоварвания, които никога не са били лесна задача за непрекъснати системи и следователно това служи като един двигател.
  2. Разширено ниво на аналитичност, заедно с машинно обучение и SQL заявки: Когато работите върху сложни натоварвания, винаги е необходимо използването на непрекъснато обучение, както и с актуализираните модели данни. Най-добрата част от този компонент на Spark е, че той може лесно да се интегрира с MLib или всяка друга специализирана библиотека за машинно обучение.
  3. Бързо отказ, а също и възстановяване за неудачник: Възстановяването на отказ и толерантността на грешките са една от основните функции, които се предлагат в Spark streaming.
  4. Балансиране на натоварването: Затрудненията често се причиняват между системите поради неравномерни натоварвания и баланси, които се правят, поради което става напълно необходимо равномерното балансиране на товара, което се управлява автоматично от този компонент на Spark.
  5. Производителност: Поради своята изчислителна техника в паметта, която използва вътрешната памет повече от външния твърд диск, производителността на Spark е много добра и ефективна в сравнение с други Hadoop системи.

Операции с искрови потоци

1) Операции за трансформация при Spark streaming: По същия начин данните се трансформират от множеството RDD, тук също данните се трансформират от DStreams и предлага много трансформации, които са налични в нормалните Spark RDD. Някои от тях са:

  • Map (): Използва се за връщане на нова форма на Dstream, когато всеки елемент се предава през функция.
    Например, data.map (line => (line, line.count))
  • flatMap (): Този е подобен на картата, но всеки елемент е картографиран на 0 или повече картографирани единици.
    Например, data.flatMap (lines => lines.split (”“))
  • filter (): Този се използва за връщане на нов набор от Dstream чрез връщане на записите, които са филтрирани за нашата употреба.
    Пример, филтър (стойност => стойност == ”искра”)
  • Union (): Използва се за връщане на нов набор от Dstream, който се състои от данните, комбинирани от входящите Dstreams и други Dstreams.
    Пример, Dstream1.union (Dstream2) .union (Dstream3)

2) Актуализиране на състоянието по ключова операция

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

Пример:

функция за актуализиране на def (NV, RC):

ако RC е None:

RC = 0

възвръщаема сума (NV, RC) #Nv е нови стойности и RC е отброен

заключение

Искровото стрийминг е една от най-ефективните системи за изграждане на реално тръбопровод от тип поточно предаване и по този начин се използва за преодоляване на всички проблеми, които се срещат с помощта на традиционните системи и методи. Следователно всички разработчици, които се учат да пробият път в компонента на искровия поток, стъпват върху най-добрата единична точка на рамка, която може да се използва за задоволяване на всички нужди в развитието. Ето защо можем спокойно да кажем, че използването му повишава производителността и резултатите в проектите и компаниите, които се опитват или очакват да използват екосистемата с големи данни. Надявам се, че сте харесали нашата статия. Следете за повече статии като тези.

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

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

  1. Какво представлява Hadoop Streaming?
  2. Искрови команди
  3. Ръководства за това как да инсталирате Spark
  4. Разлика между Hadoop срещу Spark
  5. Spark DataFrame | Предимства
  6. Топ 6 компоненти на искрата

Категория: