Introduction

Assessment and Conversion with the Snowpark Migration Accelerator

The Snowpark Migration Accelerator (SMA) is now available from Snowflake.

Overview of the Snowpark Migration Accelerator

The SMA (formerly known as SnowConvert for Spark) is a code conversion utility designed to accelerate migrations from various source platforms to Snowflake. The SMA is built upon an automated migration framework developed over the past 30 years and applies that methodology to code languages with references to the Spark API. The application builds an Abstract Syntax Tree (AST) and a Symbol Table for the entire codebase it scans, which creates a semantic model that represents what the code "does" and recreates that in the target platform (Snowflake). The result is a much higher level of automation and the ability to cross languages. This conversion is designed to provide the highest level of functional equivalence between the source and the target.

The SMA is software that understands your source code by parsing and building a semantic model of your code's behavior. It is not a find-and-replace or regex-matching tool.

SMA identifies the usages of the Spark API in source code or notebook files, inventories them, and can ultimately convert them to their functional equivalent using the Snowpark API.

Assessment and Conversion

The SMA can be used in Assessment (sometimes called "Qualification") and Conversion mode. Assessment is freely available, and it is always a best practice to assess before moving on to conversion.

Assessment Mode

Assessment mode allows a user to identify and understand the references to the Spark API present in any given codebase. It does this by parsing the source code and applying our patented framework to build a semantic model of the codebase. Since SMA is a tool that understands the source code unlike any other tool, it can report with a higher level of accuracy the elements present in the source codebase.

This "code understanding" capability informs the tool's ability to generate the data to help you start a migration. This data can be used to decide how "ready" (based on references to the Spark API) the scanned codebase is for migration. Once that decision is made, code conversion can be the next step.

You can learn more about the Assessment capabilities of the SMA by visiting the Assessment section of the SMA User Guide.

Conversion Mode

Conversion mode takes the previously mentioned semantic model and generates converted code based on the functionality present in the source platform. This output code will have references to the Spark API converted to the Snowpark API where possible. What cannot be converted will be marked with comments and supporting information for why it could not be converted.

Conversion mode can be accessed via an access code. Learn more about access codes in the access section of this documentation. You can request an access code for conversion in the SMA itself by filling out the Request an Access Code form in the tool. Reach out to sma-info@snowflake.com for more information.

Outline

The following topics will be covered in this section:

Need help with anything? Contact Us!

Let's get started.

Last updated