Overview SQL On-Demand
Introducción
¡Hola de nuevo! ?
Hoy vamos a aprender lo principal acerca de Serverless SQL Pool (o SQL Pool On-Demand), disponible ahora en Azure Synapse Analytics.
SQL Pool On-Demand, (como el nombre indica) es un conjunto de capacidades de cómputo que tendrás a disposición siempre. Es decir, no tendrás que crear el pool ni configurar un plan de consumo en específico. Sino que, de manera automática, se te asignarán los recursos necesarios para procesar las consultas sobre los datos que puedas tener en tus repositorios, por ejemplo en un Azure Data Lake Gen2.
Entonces, en este artículo te comentaré lo más relevante para que puedas hacer uso de esta característica tan fabulosa. ¡Acompañame! ?
Consideraciones
Si aún no lo haz hecho, te recomiendo revisar antes el artículo de resumen de Azure Synapse Analytics y el de crear un Azure Synapse Workspace.
Asimismo, en este artículo vamos a consultar archivos almacenados en un Azure Data Lake Storage. Asi que te recomiendo cargar alguno de ejemplo para que puedas aprovechar al máximo este artículo. ?
Creación de Base de Datos en SQL On-Demand
- Lo primero que necesitamos es crear una base de datos, para que a futuro nos sirva para crear alguna vista o external table. Clic en el Hub Develop > New SQL script.
- En el panel superior de la nueva hoja, nos aseguramos de estar conectados al SQL On-Demand > Master.
- Luego escribimos el siguiente código para crear una base de datos en este Pool.
- Puedes validar que la base de datos se creó yendo al panel izquierdo, Hub Data > Database > Refresh
- Al refrescar, podrás ver que ahora ya figura tu base de datos. Si expandes, incluso podrás ver todos los objetos que podemos tener en esta base de datos.
- Ahora necesitamos crear un origen de datos que el SQL On-Demand pueda usar para acceder a los archivos que tenemos almacenados en un Data Lake Storage. Para ello, vamos a ejecutar el siguiente código:
- Ahora si, ya podemos ir a consultar los datos que tenemos en un contenedor de tu repositorio de almacenamiento. Clic en Hub Data > Linked > Azure Data Lake Storage Gen2 > Nombre del directorio que contiene tus archivos.
En mi caso, tengo una carpeta llamada Test en donde he almacenado previamente datos de transacciones X, desglosadas en varios archivos que tienen la misma estructura.
- Clic derecho sobre cualquiera de los archivos que tengas > New SQL script > Select TOP 100 rows
- Al hacerlo, por defecto se abrirá una nueva hoja con un script de tipo T-SQL que hará un TOP 100 sobre el archivo seleccionado. Puedes ejecutarlo, pero asegurate de apuntar al SQL On Demand creado previamente.
- Hagamos algunos cambios. En lugar de hacer un TOP 100, veamos cuantos registros existen actualmente en este archivo. Hacer un Select COUNT(*) y ejecutar la consulta. Mira el resultado devuelto.
Nótese que estamos apuntando a un archivo en específico.
- Ahora vamos a hacer un ligero cambio. Vamos a borrar el nombre completo de archivo que estábamos consultado y colocamos un asterisco (*). Mira el resultado devuelto y compáralo con el paso anterior.
Con este cambio, buscamos consultar los datos que existen en TODOS los archivos que residen en la carpeta Test.
- Ahora vamos a crear una vista, para que a futuro ya no tengamos que repetir los pasos anteriores. Agrega las dos primeras líneas de código y clic en Run.
- Validamos que se haya creado la vista. Panel izquierdo > Hub Data > Workspace > Nombre de tu SQL On-Demand > Views.
Recuerda refrescar la base de datos, en caso no visualices el cambio.
- Y voilá! Ahora crea un nuevo SQL Script y prueba hacer un select simple a tu vista creada. ?
Video Explicativo
Conclusiones
Recuerda que SQL On-Demand, no está aprovisionado como el SQL Pool. Así que en este caso solo estarás pagando por las consultas realizadas en su momento.
Espero que te haya sido de utilidad. ¡Hasta la próxima! ?
0 Comentarios