Få strømming av data til lakehouse og tilgang med SQL Analytics-endepunkt

Denne quickstarten forklarer hvordan man lager en Spark-jobbdefinisjon som inneholder Python-kode med Spark Structured Streaming for å lande data i et lakehouse og deretter levere det gjennom et SQL-analyseendepunkt. Etter å ha fullført denne quickstarten, vil du ha en Spark-jobbdefinisjon som kjører kontinuerlig, og SQL-analyseendepunktet kan se de innkommende dataene.

Opprette et Python-skript

Bruk følgende Python-skript til å opprette en streaming Delta-tabell i et lakehouse ved hjelp av Apache Spark. Skriptet leser en strøm av genererte data (én rad per sekund) og skriver det i tilføyingsmodus til en Delta-tabell med navnet streamingtable. Den lagrer dataene og kontrollpunktinformasjonen i det angitte lakehouse.

  1. Bruk følgende Python-kode som bruker Spark-strukturert strømming til å hente data i et lakehouse-bord.

    from pyspark.sql import SparkSession
    
    if __name__ == "__main__":
     # Start Spark session
     spark = SparkSession.builder \
         .appName("RateStreamToDelta") \
         .getOrCreate()
    
     # Table name used for logging
     tableName = "streamingtable"
    
     # Define Delta Lake storage path
     deltaTablePath = f"Tables/{tableName}"
    
     # Create a streaming DataFrame using the rate source
     df = spark.readStream \
         .format("rate") \
         .option("rowsPerSecond", 1) \
         .load()
    
     # Write the streaming data to Delta
     query = df.writeStream \
         .format("delta") \
         .outputMode("append") \
         .option("path", deltaTablePath) \
         .option("checkpointLocation", f"{deltaTablePath}/_checkpoint") \
         .start()
    
     # Keep the stream running
     query.awaitTermination()
    
  2. Lagre skriptet som Python-fil (.py) på den lokale datamaskinen.

Opprett et innsjøhus

Bruk følgende fremgangsmåte for å opprette et lakehouse:

  1. Logg inn på Fabric-portalen.

  2. Gå til ønsket arbeidsområde, eller opprett et nytt om nødvendig.

  3. Hvis du vil opprette et innsjøhus, velger du Nytt element fra arbeidsområdet, og deretter velger du Innsjøhus i panelet som åpnes.

    Skjermbilde som viser ny dialogboks for lakehouse.

  4. Skriv inn navnet på innsjøhuset ditt, og velg Opprett.

Opprett en Spark-jobbdefinisjon

Bruk følgende steg for å lage en Spark-jobbdefinisjon:

  1. Fra samme arbeidsområde der du opprettet et innsjøhus, velger du Nytt element.

  2. I panelet som åpnes, under Hent data, velger du Spark-jobbdefinisjon.

  3. Skriv inn navnet på din Spark-jobbdefinisjon og velg Opprette.

  4. Velg Last opp, og velg Python-filen du opprettet i forrige trinn.

  5. Under Lakehouse-referanse velger du innsjøhuset du opprettet.

Sett Retry-policy for Spark-jobbdefinisjon

Bruk følgende fremgangsmåte for å angi policyen for ny forsøk for Spark-jobbdefinisjonen:

  1. Fra toppmenyen velger du Innstilling ikon.

    Skjermbilde som viser ikonet for innstillinger for Spark-jobbdefinisjon.

  2. Åpne kategorien Optimalisering og sett utløseren for policy på nytttil På.

    Skjermbilde som viser Spark Job Definition-optimaliseringsfanen.

  3. Definer maksimalt antall forsøk på nytt, eller kontroller Tillat ubegrensede forsøk.

  4. Angi tid mellom hvert forsøk på nytt, og velg Bruk.

Note

Det er en levetidsgrense på 90 dager for konfigurasjonen av policyen for nye forsøk. Når policyen for nye forsøk er aktivert, startes jobben på nytt i henhold til policyen innen 90 dager. Etter denne perioden opphører policyen for nye forsøk automatisk å fungere, og jobben avsluttes. Brukere må deretter starte jobben på nytt manuelt, noe som igjen aktiverer policyen for nytt forsøk.

Kjør og overvåk Spark-jobbdefinisjonen

  1. Fra toppmenyen velger du Kjør-ikonet .

    Skjermbilde som viser kjøreikonet for Spark-jobbdefinisjon.

  2. Kontroller om Spark Job-definisjonen ble sendt inn og kjørt.

Vise data ved hjelp av et SQL Analytics-endepunkt

Når skriptet kjøres, opprettes en tabell kalt streamingtable med tidsstempel og verdikolonner i lakehouse. Du kan vise dataene ved hjelp av endepunktet for SQL-analyse:

  1. Fra arbeidsplassen, åpne hytta ved innsjøen.

  2. Bytt til endepunkt for SQL-analyse fra øverste høyre hjørne.

  3. Utvid Skjemaer dbo-tabeller >>fra venstre navigasjonsrute for å forhåndsvise dataene.