Іскрова стрічка - Вичерпний посібник із іскрових потоків

Зміст:

Anonim

Вступ до іскрового потоку

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

Як працює іскрова стрічка?

  • У випадку іскрової потокової передачі потоки даних поділяються на фіксовані партії, які також називаються DStreams, що є внутрішньо послідовністю фіксованого типу кількості RDD. Отже, RDD обробляються за допомогою використання Spark API, і результати, що повертаються, знаходяться в партіях. Окремі операції потоку, що є або стаціонарними, або перетвореннями без стану, також складаються разом з ними вихідними операціями, вхідними операціями DStream, а також приймачами. Ці потоки є базовим рівнем абстракції, що забезпечується потоком Apache Spark, який є безперервним потоком Іскра-RDD.
  • Він також надає можливості для відмовостійкості використовувати для Dstreams, досить схожих на RDD, доки копія даних доступна, і тому будь-який стан можна перерахувати або повернути до початкового стану, використовуючи графік рядків Spark на набір RDD. Тут слід замислюватися про те, що Dstreams використовуються для перекладу основних операцій на їх базовому наборі RDD. Ці перетворення на основі RDD здійснюються та обчислюються двигуном Spark. Операції Dstream використовуються для забезпечення базового рівня деталей та надання розробнику високого рівня API для цілей розробки.

Переваги іскрового потоку

Існують різні причини, чому використання потокової іскри є додатковою перевагою. Ми збираємось обговорити деякі з них у нашому пості тут.

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

Операції з іскровим потоком

1) Операції з трансформації в іскровому потоці : Таким же чином трансформуються дані з набору RDD, тут також перетворюються дані з DStreams, і вони пропонують багато перетворень, доступних у звичайних Іскрах 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 немає:

RC = 0

повернення суми (NV, RC) #Nv - це нові значення, а RC - підрахунок

Висновок

Іскрова потокова передача є однією з найефективніших систем для побудови реального потокового конвеєрного типу, а тому використовується для подолання всіх проблем, з якими стикаються за допомогою традиційних систем та методів. Тому всі розробники, які навчаються проникати в іскровий потік компонент, наступають на найпростішу єдину точку рамки, яка може бути використана для задоволення всіх потреб розвитку. Тому ми можемо з упевненістю сказати, що його використання підвищує продуктивність та результативність в проектах та компаніях, які намагаються або з нетерпінням чекають використання екосистеми великих даних. Сподіваюся, вам сподобалась наша стаття. Слідкуйте за новими подібними статтями.

Рекомендовані статті

Це посібник із іскрових потоків. Тут ми обговорюємо вступ до Spark Streaming, як це працює разом із Перевагами та Прикладами. Ви також можете ознайомитись з іншими нашими пов’язаними статтями -

  1. Що таке Hadoop Streaming?
  2. Іскрові команди
  3. Підручники про те, як встановити іскру
  4. Різниця між Hadoop проти Spark
  5. Іскрові даніFrame | Переваги
  6. Топ-6 компонентів іскри