Migrate Spark Scala to Snowflake with SnowConvert
SnowConvert

 

Spark Scala to Snowflake

Mobilize.Net SnowConvert is the most effective tool for migrating Microsoft Spark-Scala to the Snowflake Data Cloud. With over 500 million lines of code converted in the past year across multiple platforms, start accelerating your code migration today with the tool that has seen it all.

Get Started Today

Get to know Mobilize.Net SnowConvert for Spark-Scala

You've asked for it, and now it's here. From the makers of the heavily used SnowConvert for Teradata, SnowConvert for Oracle, and SnowConvert for SQL Server comes Mobilize.Net SnowConvert for Spark-Scala. SnowConvert automates the code conversion process to get your Spark workloads up and running on Snowflake faster. This is not "find-and-replace" conversion, but a complete semantic recreation of functionally equivalent code in Snowflake.

SnowConvert for Spark-Scala creates a functionally equivalent output in Snowflake SQL for any Spark SQL and T-SQL code written for a SQL Server database. Specifically:

  • Tables and views (DDL and DML) are migrated to Snowflake SQL
  • Procedures, functions, and other T-SQL are migrated to your choice of:

SnowConvert for Spark Scala is delivered as a part of BlackDiamond Studio. You can learn more about accessing SnowConvert, and see how it runs inside of BlackDiamond Studio by visiting our BlackDiamond Studio page.

SnowConvertMigrations

To learn more about SnowConvert, you can visit our webpage on SnowConvert or fill out the form above to get started with the tool. 

Migration Plus Assessment

The first step in any successful migration is getting a plan in place, but the next step would be to get an assessment of the current platform. While SnowConvert for Spark-Scala automates the code migration, it's also a code understanding tool. SnowConvert builds an abstract syntax tree and a complete symbol table that together create a semantic model of the source when you point it at any source codebase to perform the conversion. Out of those two artifacts, SnowConvert can provide you a level of detail on the code that is present that you can only get with Mobilize.Net.

Here's a quick look at the kind of assessment information that is provided:

  • Complete Assessment Report: This report gives you a summary of the Spark Scala functions found in your code, an estimate of the level of conversion you can expect for that code, and a summary of the estimated issues, warnings, and errors identified by the conversion process. This summary gives you a view into the level of work remaining to complete a migration after the automated code conversion. 

    Screenshot of conversion completion

  • Migration Readiness Assessment: As well as the conversion summary, the tool also generates a migration readiness report that lets you know not only the level of automated conversion you can expect, but an honest report letting you know if Snowpark is a better option for you than Spark. Some workloads may be utilizing features in Spark that are not yet ready in Snowpark. SnowConvert will tell you if your workload is a prime candidate not just for migration, but for running using the Snowpark API.

  • Errors, Warnings, and Issues Inventory: No migration can be 100% automated. There are always corner cases. Luckily for you, our assessment tool will report all of the pieces of code that could not be converted. The tool will give you a description on why it could not be converted, a severity/effort level for each error, and the exact location in the source code of the code segment that could not be converted.

    snowconvert_sql_server_issues_summary

This assessment is specifically designed to give you all the information you need to understand the migration ahead of you, get a sense of how much can be automatically converted using SnowConvert for Spark-Scala, and give you an idea of how ready your workload is to run in Snowpark. 

Additional Resources 

Once you fill out the form above, you will receive an email from Mobilize.Net Studio with information on how to get started using Mobilize.Net SnowConvert for Spark-Scala. The email will also contain more instructions on how to use the tool, but you can always learn more about installation and setup as well as some valuable troubleshooting tips on our documentation page. 

Types of migrations

  • Spark Scala (*.scala) to Snowpark Scala (*.scala):
    • Scala functions in Spark (org.apache.spark.sql) are converted to a Scala equivalent in Snowflake supported by the Snowpark API (com.snowflake.snowpark)
    • Spark SQL functions converted to UDF's in Snowflake SQL as either:
      • JavaScript embedded in Snowflake SQL
      • Snowflake Scripting

GET STARTED WITH SNOWCONVERT