DEV Community

Cover image for INTRODUCCIÓN A LA ARQUITECTURA EN SNOWFLAKE
datapathformation
datapathformation

Posted on • Updated on

INTRODUCCIÓN A LA ARQUITECTURA EN SNOWFLAKE

Queremos acelerar el talento en data y analytics en LATAM. Si te gusta el artículo recuerda que todos los meses tenemos inicios de nuestros programas especializados de Data Engineering, Data Analyst, Cloud y Machine Learning Engineer. Puedes conocer más aquí.

Actualmente las organizaciones están cada vez más dispuestas en aprovechar el poder de la nube para almacenar y procesar grandes volúmenes de datos en tiempo real. Es por esto que Snowflake ha ganado popularidad debido a su arquitectura única y escalable. En virtud de ello en el presente artículo, se explicarán los conceptos básicos de la arquitectura en Snowflake y cómo se diferencia de las soluciones tradicionales de almacenamiento de datos.

Arquitectura de Snowflake
La arquitectura de Snowflake se basa en un enfoque de almacenamiento y manejo separados, lo que significa que el almacenamiento de datos y el procesamiento de consultas se realizan en capas separadas. Esta arquitectura que brinda autonomía a cada capa permite una mayor escalabilidad y flexibilidad, lo que la hace ideal para entornos en la nube.
Entonces, es preciso explicar que la capa de almacenamiento en Snowflake se basa en un almacén de datos altamente escalable que utiliza el almacenamiento en la nube, como Amazon S3 o Microsoft Azure Blob Storage. Los datos se almacenan en forma de archivos separados y comprimidos, lo que facilita la gestión y el acceso eficiente a grandes volúmenes de datos. Esta arquitectura permite que los datos se compartan y se utilicen en múltiples clústeres de manejo simultáneamente.

Por otra parte, la capa de computación en Snowflake es donde se ejecutan las consultas y el procesamiento de datos. Utiliza un motor de consulta optimizado llamado "Virtual Warehouse", que es esencialmente un clúster de máquinas virtuales que ejecutan las consultas. La capacidad de cómputo se puede escalar automáticamente según la carga de trabajo, lo que garantiza un rendimiento constante incluso en situaciones de alto tráfico.

Image descriptionImagen 1.Tomada de https://dantaanalytics.com/plataformas/snowflake/

Funciones SQL aplicadas a Snowflake
A continuación, se presentarán funciones básicas que se dan dentro del entorno de Snowflake las mismas que son usadas en las capas de este servicio.

Image descriptionImagen 2. Crear una tabla

Image descriptionImagen 3. Insertar datos en la tabla

Image descriptionImagen 4.Ejecutar una consulta

En este ejemplo, los datos de la tabla se almacenarán en la capa de almacenamiento de Snowflake, mientras que la consulta se ejecutaría en la capa de computación utilizando un almacén virtual. Snowflake manejaría automáticamente la distribución de datos y la asignación de recursos de cómputo para garantizar un rendimiento óptimo, con los ejemplos mencionados anteriormente se deja en evidencia la gran versatilidad y autonomía que nos ofrece Snowflake en sus operaciones.

En suma, la arquitectura en Snowflake ofrece una solución moderna y escalable para el almacenamiento y procesamiento de datos en la nube. Proporciona un rendimiento superior, una gestión simplificada, una arquitectura compartida para múltiples usuarios y una integración perfecta con la nube. Estas características hacen que Snowflake sea una opción atractiva para las empresas que buscan aprovechar al máximo sus datos y obtener información valiosa de manera eficiente.

Referencias:
Snowflake. (2021). Snowflake Architecture. Recuperado el 10 de mayo de 2023, de https://www.snowflake.com/what-is-cloud-data-platform/architecture/

Snowflake Documentation. (2021). Introduction to Snowflake. Recuperado el 10 de mayo de 2023, de https://docs.snowflake.com/en/user-guide/intro-key-concepts.html

Jhordan Vasquez
Coordinador Académico Datapath

Conoce nuestros programas

Image description

✔Descubre cómo acelerar tu talento en Data, Analytics y Cloud:

  • Tenemos inicios todo los meses, conoce más aquí.

Top comments (0)