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
- A Synapse Studio bal oldali ablaktábláján válassza azApache Spark-készletekkezelése> lehetőséget.
- Válassza az Új lehetőséget
- Az Apache Spark-készlet neveként adja meg a Spark1 nevet.
- A Csomópont mérete mezőben adja meg a Kicsi értéket.
- Csomópontok száma: Állítsa a minimumot 3-ra, a maximumot pedig 3-ra
- 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.
A Synapse Studio lépjen a Fejlesztés központra.
Hozzon létre új notebookot.
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))
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.
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.
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.
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.
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
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)
Futtassa a cellát a nyctaxi Spark-adatbázisba betöltött NYC Taxi-adatok megjelenítéséhez.
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")
A cellaeredményekben válassza a Diagram lehetőséget az adatok vizualizációjának megtekintéséhez.