Inicio rápido: Análisis con Apache Spark
En este tutorial, aprenderá los pasos básicos para cargar y analizar datos con Apache Spark para Azure Synapse.
Requisitos previos
Asegúrese de que ha colocado los datos de ejemplo en la cuenta de almacenamiento principal.
Crear un grupo de Apache Spark sin servidor
- En Synapse Studio, en el lado izquierdo, seleccione Administrar>Grupos de Apache Spark.
- Seleccione Nuevo paso.
- En Nombre del grupo de Apache Spark escriba Spark1.
- En Tamaño del nodo escriba Pequeño.
- En Número de nodos, establezca el valor mínimo en 3 y el máximo en 3.
- Seleccione Revisar y crear>Crear. El grupo de Apache Spark estará listo en unos segundos.
Comprender grupos de Apache Spark sin servidor
Un grupo de Spark sin servidor es una forma de indicar cómo un usuario desea trabajar con Spark. Cuando se empieza a usar un grupo, se crea una sesión de Spark, en caso de que sea preciso. El grupo controla el número de recursos de Spark que se usarán en esa sesión y el tiempo que durará la sesión antes de que se pause automáticamente. El usuario paga por los recursos de Spark usados durante esa sesión y no por el grupo en sí. De este modo, un grupo de Spark le permite usar Apache Spark sin administrar clústeres. Esto es similar al funcionamiento de un grupo de SQL sin servidor.
Análisis de datos de taxis de Nueva York con un grupo de Spark
Nota
Asegúrese de que ha colocado los datos de ejemplo en la cuenta de almacenamiento principal.
En Synapse Studio, vaya al centro Develop (Desarrollo).
Cree un nuevo notebook.
Cree una celda de código y pegue el código siguiente en ella:
%%pyspark df = spark.read.load('abfss://users@contosolake.dfs.core.windows.net/NYCTripSmall.parquet', format='parquet') display(df.limit(10))
Modifique el identificador URI de carga para que haga referencia al archivo de ejemplo de la cuenta de almacenamiento según el esquema de URI de abfss.
En el cuaderno, en el menú Attach to (Asociar a), elija el grupo de Spark sin servidor Spark1 que se creó anteriormente.
Seleccione Run (Ejecutar) en la celda. En caso de que sea necesario, Synapse iniciará una nueva sesión de Spark para ejecutar esta celda. Si se necesita una nueva sesión de Spark, tardará aproximadamente de 2 a 5 minutos en crearse. Una vez creada una sesión, la ejecución de la celda tardará aproximadamente 2 segundos.
Si solo desea ver el esquema de la trama de datos, ejecute una celda con el siguiente código:
%%pyspark df.printSchema()
Carga de los datos de los taxis de Nueva York en la base de datos nyctaxi de Spark
Los datos están disponibles mediante la trama de datos denominada df. Cárguelos en una base de datos de Spark denominada nyctaxi.
Agregue una nueva celda de código al cuaderno y, a continuación, escriba el código siguiente:
%%pyspark spark.sql("CREATE DATABASE IF NOT EXISTS nyctaxi") df.write.mode("overwrite").saveAsTable("nyctaxi.trip")
Análisis de los datos de los taxis de Nueva York mediante Spark y cuadernos
Cree una celda de código y escriba el código siguiente.
%%pyspark df = spark.sql("SELECT * FROM nyctaxi.trip") display(df)
Ejecute la celda para que se muestren los datos de taxis de Nueva York que cargamos en la base de datos nyctaxi de Spark.
Cree una celda de código y escriba el código siguiente. Analizaremos estos datos y guardaremos los resultados en la tabla nyctaxi.passengercountstats.
%%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")
En los resultados de la celda, seleccione Chart (Gráfico) para ver los datos visualizados.