Data e IAEmergentes

SnowConvert, cómo recrear código para Snowflake

3 Mins de lectura

Descubre cómo te ayudamos a unificar, integrar, analizar y compartir tus datos de forma fácil y segura con Snowflake.

La transición a la nube de bases de datos con servidores on-premise siempre ha sido esa ambición que muchas empresas tenían planificada a varios años vista. Pero, a raíz de la pandemia, esta transición recibió un empuje forzado, que hizo darse cuenta de que esta «mudanza» es más costosa que simples expresiones regulares o un find and replace. Es en este contexto donde la herramienta que ha adquirido Snowflake por parte de Mobilize.Net, SnowConvert, es una gran adquisición y un gran reclamo para los consumidores.

Entorno Snowflake

¿Qué es SnowConvert?

SnowConvert es un conjunto de herramientas que emplea técnicas de automatización sofisticadas para recrear código funcionalmente equivalente en Snowflake de los siguientes objetos:

  • Tablas
  • Vistas
  • Procedimientos almacenados
  • Macros
  • Archivos BTEQ

Se destacan principalmente los archivos BTEQ (Bulk Teradata Query), utilizados en bases de datos Teradata, sistema utilizado para manejar bases de datos con grandes volúmenes de datos y consultas complejas. Estos archivos permiten enviar consultas SQL y realizar operaciones de importación/exportación de datos en un formato eficiente, por lo que tienen comandos SQL y algunos comandos especiales propios del formato BTEQ.

Dependiendo de lo que se quiera convertir, se obtendrá un resultado distinto tal y como se aprecia en las imágenes siguientes, teniendo como salida SQL puro, JavaScript o Python. La recreación de un código funcionalmente equivalente a este tipo de ficheros hace resaltar a SnowConvert por su complejidad.

Teradata to Snowflake Conversion Archictecture

Oracle to Snowflake Conversion Archictecture

 

Soporte de SnowConvert

SnowConvert proporciona servicio a los siguientes sistemas de bases de datos:

  • Teradata
  • Oracle
  • Microsoft SQL Server
  • Spark-Scala: si estás utilizando Spark para las tareas de análisis, se puede utilizar la herramienta para migrar las cargas de trabajo que se ejecutan en Spark a Snowflake, aprovechando la API de Snowpark.

Adicionalmente, se sigue trabajando en dar soporte a más plataformas para disponer de esta herramienta que acelera en gran medida la migración a la nube.

Cómo funciona internamente SnowConvert

Dentro de SnowConvert, para el usuario, se encuentran dos modos a la hora de convertir: el modo de calificación y el modo de conversión.

  • Modo de calificación
    • SnowConvert escanea la base de datos y el código a convertir, creando internamente un árbol de sintaxis abstracto y una tabla de símbolos para facilitar la conversión.
    • Genera un informe de compatibilidad que indica qué porcentaje del código se puede migrar automáticamente, qué porcentaje requiere una pequeña intervención del usuario y qué parte debe ser migrada manualmente ya que no se puede hacer por la herramienta.
    • Este informe ayuda a los usuarios a entender el alcance del trabajo necesario y a planificar el proceso de migración con mayor precisión.
    • Además, permite identificar posibles problemas antes de comenzar la conversión, asegurando que se pueden abordar de manera proactiva y eficiente. Este informe indica al usuario también el costo de la migración.

 

  • Modo de conversión
    • Tras la aprobación del informe por parte del usuario, la herramienta comienza a crear todos los objetos y el código en el directorio indicado. Es aquí donde la herramienta consolida el coste.
    • Una vez creados, los objetos y el código se suben a Snowflake, completando la migración.
    • Este modo automatiza gran parte del proceso, reduciendo significativamente el tiempo y el esfuerzo necesarios para la migración y minimizando errores humanos.
    • La automatización asegura una conversión rápida y precisa, permitiendo a los usuarios centrarse en otras tareas críticas durante la migración.

 

Estos dos modos combinan análisis detallado y automatización, permitiendo una migración más fluida y eficiente, y ofreciendo a las empresas una herramienta poderosa para adoptar tecnologías en la nube sin complicaciones. SnowConvert no solo simplifica el proceso, sino que también optimiza el uso de recursos y mejora la precisión en la migración de datos complejos.

 

Conclusión

SnowConvert surge como una solución eficiente en el panorama actual de migración a la nube de bases de datos. Esta herramienta no solo facilita la transición de sistemas on-premise a Snowflake, sino que también destaca por su capacidad para automatizar procesos complejos de conversión de código. Su capacidad para generar código funcionalmente equivalente en diferentes lenguajes, como SQL, JavaScript o Python, así como desde diferentes plataformas populares, hace destacar su versatilidad y complejidad técnica.

En pocas palabras, SnowConvert hace que mudarse a la nube sea mucho más fácil. Es una jugada inteligente y sencilla para aquellas empresas que quieren mejorar cómo trabajan y usar tecnología on cloud.

 

En hiberus somos Service Partner Select de Snowflake y contamos con un equipo certificado en la plataforma que tiene una gran experiencia en el desarrollo de estrategias de datos. Podemos ayudarte a diseñar, migrar, implantar y sacar el máximo partido de las soluciones Snowflake más adecuadas para tu negocio. ¿Hablamos?

¿Quieres más información sobre nuestros servicios de Snowflake?

Contacta con nuestro equipo de Snowflake

    1 posts

    Sobre el autor
    Data Engineer en hiberus
    Artículos
    Artículos relacionados

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    ¡No te pierdas nada!

    Te mantenemos al dia de tendencias y novedades sobre el futuro del trabajo, formas de hacer crecer tu negocio, liderazgo digital y muchas cosas más..

    Newsletter