Ejecutar queries en Azure Databricks Notebook
Ya que tenemos creado un azure databricks notebook, en este post nos centraremos en explorar su uso para el análisis de datos.
Entonces, lo primero que tenemos que hacer es cargar un archivo con los datos que queramos analizar. Si bien es cierto, azure databricks nos permite conectarnos a distintos servicios de azure como sql database, blob storage, data lake storage o SQL Datawarehouse, también existe la opción de poder practicar con algunos archivos de prueba.
De cualquier forma, en este post les mostraré como cargar uno que tengamos en nuestro equipo.
Clic Data y luego clic en Add Data.
Hacemos clic en Upload File, clic en Browse y en el explorador de archivos buscamos el archivo csv que queremos analizar.
Luego buscaremos en la pestaña DBFS > File Store > tables, el archivo que acabamos de subir. Esto, con el fin de copiar la ruta donde se encuentra almacenado, el cual usaremos más adelante.
Entonces, como ya tenemos el archivo con el que trabajaremos, nos vamos a Workspace y seleccionamos el Notebook que habíamos creado en el post anterior:
Uso de tablas
Vamos a crear una tabla (con el nombre que prefieras) y poblarla con el contenido del csv cargado anteriormente. ¡Ojo! Si ya existe una tabla con el mismo nombre, se generará una excepción.
Entonces, para crear una tabla escribe el siguiente código y ejecuta la celda.
DROP TABLE IF EXISTS coches;
CREATE TABLE coches
USING csv
OPTIONS (path "/File Store/tables/coches.csv" , header "true", delimiter ";")
Una vez creada la tabla, procedemos a comprobar que efectivamente los datos se encuentren en ella.
SELECT * FROM coches
La celda anterior nos devolverá como resultado el set de datos en formato tabla. Asi que, vamos a seguir explorando los datos que tenemos ayudándonos visualmente a través de gráficos. Para ello, basta con jugar con las opciones que encuentres debajo de cada celda.
Luego, vamos a resumir los datos y generar un gráfico de barras con la siguiente linea.
select Coches, avg(Precio) as Precio from coches group by Coches order by Coches
Uso de Python DataFrame API
El API DataFrame nos va a proporcionar un amplio conjunto de funciones (como seleccionar columnas, filtrar, unir, agregar, etc.) que permitirán resolver problemas comunes de análisis de datos de manera eficiente. Además de esto, también le permite mezclar operaciones sin problemas con código personalizado de Python, R, Scala y SQL.
Dicho esto, la manera más fácil de comprender este concepto es en la práctica así que vamos a crear un dataframe a partir del siguiente código:
%python
coches = spark.read.csv("/File Store/tables/coches.csv", header="true", inferSchema="true", sep=";")
En el código anterior lo que se hace basicamente es decirle que tiene nuestro archivo tiene una cabecera (header = “true”), que infiera de manera automática la estructura de los datos (inferSchema = “true”) y como dato adicional le decimos que nuestro archivo está delimitado por punto y coma (“;”).
Ahora que ya tenemos el dataframe creado podemos pasar a visualizar los datos utilizando comandos estándar. Así que, para ver estos datos en formato tabular, usaremos el comando Databricks Display() y adicionalmente incluiremos una función de agrupación y agregación para tener como resultado lo siguiente:
%python
from pyspark.sql.functions import avg
display (coches.select("Coches","Precio").groupBy("Coches").agg(avg("Precio")).sort("Coches"))
¡Excelente! Hoy hemos aprendido a hacer el uso de tablas y dataframes para poder analizar nuestros datos contenidos en un csv.
Keyla Dolores
Keyla es data engineer, speaker internacional, docente y blogger. Le gusta aprender nuevas tecnologías que puedan ayudar a más personas a sacar mayor provecho a sus datos. Cuando no está haciendo algunas de estas cosas, seguro la encontrarás dibujando a carboncillo, molestando al gato o comiendo queso.
0 Comentarios