Explorați redarea în flux structurată Apache Spark
Apache Spark este un cadru de procesare distribuit pentru analize mari de date. Puteți utiliza Spark pe Microsoft Azure în următoarele servicii:
- Microsoft Fabric
- Azure Databricks
Spark poate fi utilizată pentru a rula cod (scris de obicei în Python, Scala sau Java) în paralel pe mai multe noduri de cluster, permițându-i să proceseze eficient volume foarte mari de date. Spark poate fi utilizată atât pentru procesarea în loturi, cât și pentru procesarea fluxului.
Streaming structurat Spark
Pentru a procesa datele de redare în flux pe Spark, puteți utiliza biblioteca Spark Structured Streaming , care furnizează o interfață de programare a aplicațiilor (API) pentru ingerarea, procesarea și ieșirea rezultatelor din fluxurile permanente de date.
Spark Structured Streaming este construit pe o structură omniprezentă în Spark, numită structură de date, care encapsulează un tabel de date. Utilizați SPARK Structured Streaming API pentru a citi date dintr-o sursă de date în timp real, cum ar fi un hub Kafka, un depozit de fișiere sau un port de rețea, într-un cadru de date "fără limite", care este populat continuu cu date noi din flux. Apoi definiți o interogare în cadrul de date care selectează, proiecte sau agregă datele - adesea în ferestre temporale. Rezultatele interogării generează un alt cadru de date, care poate fi persistent pentru analiză sau procesare ulterioară.
Spark Structured Streaming este o alegere excelentă pentru analize în timp real atunci când trebuie să încorporați date de redare în flux într-un lac de date bazat pe Spark sau într-un depozit de date analitic.
Notă
Pentru mai multe informații despre Spark Structured Streaming, consultați Ghidul de programare Spark Structured Streaming.
Lacul Delta
Delta Lake este un strat de stocare open-source care adaugă suport pentru consistența tranzacției, impunerea schemei și alte caracteristici obișnuite de depozitare a datelor la stocarea lacului de date. De asemenea, unifică stocarea pentru redarea în flux și datele pe loturi și poate fi utilizată în Spark pentru a defini tabele relaționale atât pentru procesarea în flux, cât și pentru lot. Atunci când este utilizat pentru procesarea fluxului, un tabel Delta Lake poate fi utilizat ca sursă de redare în flux pentru interogări în timp real sau ca chiuvetă la care este scris un flux de date.
Runtimes Spark din Microsoft Fabric și Azure Databricks includ suport pentru Delta Lake.
Delta Lake combinat cu Spark Structured Streaming este o soluție bună atunci când trebuie să procesați și să generați date abstracte procesate într-un lac de date în spatele unei scheme relaționale pentru interogarea și analiza bazată pe SQL.
Notă
Pentru mai multe informații despre Delta Lake, consultați Lakehouse și tabelele Delta Lake.