Explorați elementele comune ale arhitecturii de procesare a fluxului

Finalizat

Există multe tehnologii pe care le puteți utiliza pentru a implementa o soluție de procesare în flux, dar în timp ce detaliile specifice de implementare pot varia, există elemente comune pentru majoritatea arhitecturilor de redare în flux.

O arhitectură generală pentru procesarea fluxului

La cea mai simplă arhitectură de nivel înalt pentru procesarea fluxului arată astfel:

Diagrama unui eveniment care generează date, care este capturată într-o coadă înainte de procesare, iar rezultatele sunt scrise într-un depozit de date sau o vizualizare.

  1. Un eveniment generează unele date. Acesta poate fi un semnal emis de un senzor, un mesaj de rețele sociale postat, o intrare de fișier jurnal scrisă sau orice altă apariție care duce la unele date digitale.
  2. Datele generate sunt capturate într-o sursă de redare în flux pentru procesare. În cazuri simple, sursa poate fi un folder dintr-un depozit de date în cloud sau un tabel dintr-o bază de date. În soluții mai robuste de redare în flux, sursa poate fi o "coadă" care captează logica pentru a vă asigura că datele despre evenimente sunt procesate în ordine și că fiecare eveniment este procesat o singură dată.
  3. Datele evenimentului sunt procesate adesea de o interogare perpetuă care operează cu datele evenimentului pentru a selecta date pentru anumite tipuri de evenimente, valori de date de proiect sau valori de date agregate în perioade temporale (bazate pe timp) (sau ferestre) - de exemplu, prin numărarea numărului de emisii de senzori pe minut.
  4. Rezultatele operațiunii de procesare a fluxului sunt scrise într-o ieșire (sau o chiuvetă), care poate fi un fișier, un tabel de bază de date, un tablou de bord vizual în timp real sau o altă coadă de procesare ulterioară de către o interogare în aval ulterioară.

Servicii de analiză în timp real

Microsoft acceptă mai multe tehnologii pe care le puteți utiliza pentru a implementa analize în timp real ale datelor în flux, inclusiv:

  • Azure Stream Analytics: O soluție de tip platformă ca serviciu (PaaS) pe care o puteți utiliza pentru a defini activitățile de redare în flux care ingerează date dintr-o sursă de redare în flux, a aplica o interogare perpetuă și a scrie rezultatele la un rezultat.
  • Spark Structured Streaming: o bibliotecă open-source care vă permite să dezvoltați soluții complexe de redare în flux pe servicii bazate pe Apache Spark, inclusiv Microsoft Fabric și Azure Databricks.
  • Microsoft Fabric: O platformă de baze de date și analiză de înaltă performanță care include Data Engineering, Data Factory, Data Science, Real-Time Intelligence, Data Warehouse și Baze de Date.

Surse pentru procesarea fluxului

Următoarele servicii sunt utilizate de obicei pentru a ingera date pentru procesarea fluxului pe Azure:

  • Huburi de evenimente Azure: Un serviciu de ingestie a datelor pe care le puteți utiliza pentru a gestiona cozi de date despre evenimente, pentru a vă asigura că fiecare eveniment este procesat în ordine, exact o dată.
  • Azure IoT Hub: un serviciu de ingestie a datelor similar cu huburile de evenimente Azure, dar optimizat pentru a gestiona datele evenimentului de pe dispozitive internet-of-things (IoT).
  • Azure Data Lake Store Gen 2: un serviciu de stocare foarte scalabil utilizat adesea în scenarii de procesare pe loturi , dar poate fi utilizat și ca sursă de date de redare în flux.
  • Apache Kafka: O soluție de ingestie a datelor open-source utilizată de obicei împreună cu Apache Spark.

Chiuvete pentru procesarea fluxului

Ieșirea din procesarea fluxului este adesea trimisă la următoarele servicii:

  • Huburile de evenimente Azure: Utilizate pentru a plasa în coadă datele procesate pentru procesare ulterioară în aval.
  • Azure Data Lake Store Gen 2, Microsoft OneLake sau azure blob storage: Utilizat pentru a menține rezultatele procesate ca fișier.
  • Bază de date Azure SQL, Azure Databricks sau Microsoft Fabric: Utilizat pentru a menține rezultatele procesate într-un tabel pentru interogare și analiză.
  • Microsoft Power BI: Utilizat pentru a genera vizualizări în timp real ale datelor în rapoarte și tablouri de bord.