Elemzés az Apache Sparkkal

Ebben az oktatóanyagban megismerheti az adatok betöltésének és elemzésének alapvető lépéseit az Apache Spark for Azure Synapse használatával.

Kiszolgáló nélküli Apache Spark-készlet létrehozása

  1. A Synapse Studio bal oldali ablaktábláján válassza azApache Spark-készletekkezelése> lehetőséget.
  2. Válassza az Új lehetőséget
  3. Az Apache Spark-készlet neveként adja meg a Spark1 nevet.
  4. A Csomópont mérete mezőben adja meg a Kicsi értéket.
  5. Csomópontok száma: Állítsa a minimumot 3-ra, a maximumot pedig 3-ra
  6. Válassza a Felülvizsgálat + létrehozás>Létrehozás lehetőséget. Az Apache Spark-készlet néhány másodperc múlva készen áll.

A kiszolgáló nélküli Apache Spark-készletek ismertetése

A kiszolgáló nélküli Spark-készlet azt jelzi, hogy a felhasználó hogyan szeretné használni a Sparkot. Amikor elkezdi használni a készletet, szükség esetén létrejön egy Spark-munkamenet. A készlet határozza meg, hogy az adott munkamenet hány Spark-erőforrást használ, és mennyi ideig tart a munkamenet, mielőtt automatikusan szünetelteti. Az adott munkamenet során használt Spark-erőforrásokért kell fizetnie, nem magának a készletnek. Így a Spark-készlet lehetővé teszi az Apache Spark használatát fürtök kezelése nélkül. Ez hasonló a kiszolgáló nélküli SQL-készlet működéséhez.

NYC Taxi-adatok elemzése Spark-készlettel

Megjegyzés

Győződjön meg arról, hogy a mintaadatokat az elsődleges tárfiókba helyezte.

  1. A Synapse Studio lépjen a Fejlesztés központra.

  2. Hozzon létre új notebookot.

  3. Hozzon létre egy új kódcellát, és illessze be a következő kódot a cellába:

    %%pyspark
    df = spark.read.load('abfss://users@contosolake.dfs.core.windows.net/NYCTripSmall.parquet', format='parquet')
    display(df.limit(10))
    
  4. Módosítsa a betöltési URI-t, így a tárfiókban lévő mintafájlra hivatkozik az abfss URI-séma szerint.

  5. A jegyzetfüzet Csatolás menüjében válassza ki a korábban létrehozott Spark1 kiszolgáló nélküli Spark-készletet.

  6. Válassza a Futtatás a cellán lehetőséget. A Synapse új Spark-munkamenetet indít a cella szükség esetén való futtatásához. Ha új Spark-munkamenetre van szükség, kezdetben körülbelül 2–5 percet vesz igénybe a létrehozás. A munkamenet létrehozása után a cella végrehajtása körülbelül 2 másodpercet vesz igénybe.

  7. Ha csak látni szeretné az adatkeret sémáját, futtasson egy cellát a következő kóddal:

    %%pyspark
    df.printSchema()
    

Az NYC Taxi adatainak betöltése a Spark nyctaxi adatbázisba

Az adatok a df nevű adatkereten keresztül érhetők el. Töltse be egy nyctaxi nevű Spark-adatbázisba.

  1. Adjon hozzá egy új kódcellát a jegyzetfüzethez, majd írja be a következő kódot:

    %%pyspark
    spark.sql("CREATE DATABASE IF NOT EXISTS nyctaxi")
    df.write.mode("overwrite").saveAsTable("nyctaxi.trip")
    

Az NYC Taxi adatainak elemzése Spark és jegyzetfüzetek használatával

  1. Hozzon létre egy új kódcellát, és írja be a következő kódot.

    %%pyspark
    df = spark.sql("SELECT * FROM nyctaxi.trip") 
    display(df)
    
  2. Futtassa a cellát a nyctaxi Spark-adatbázisba betöltött NYC Taxi-adatok megjelenítéséhez.

  3. Hozzon létre egy új kódcellát, és írja be a következő kódot. Ezeket az adatokat elemezni fogjuk, és az eredményeket egy nyctaxi.passengercountstats nevű táblába mentjük.

    %%pyspark
    df = spark.sql("""
       SELECT passenger_count,
           SUM(trip_distance) as SumTripDistance,
           AVG(trip_distance) as AvgTripDistance
       FROM nyctaxi.trip
       WHERE trip_distance > 0 AND passenger_count > 0
       GROUP BY passenger_count
       ORDER BY passenger_count
    """) 
    display(df)
    df.write.saveAsTable("nyctaxi.passengercountstats")
    
  4. A cellaeredményekben válassza a Diagram lehetőséget az adatok vizualizációjának megtekintéséhez.

Következő lépések