Supercharge Snowflake ❄️ with the power of Python 🐍

Mathew Partridge
5 min readNov 21, 2022

SQL is rapidly becoming the default language of data transformation (thanks DBT), however SQL is not always enough. Enter Snowpark.

I’ll leave the full Snowpark marketing pitch to Snowflake but I will briefly say that Snowpark allows Database Developers and Data Engineers to seamlessly use Python (Scala and Java) natively in the database. The introduction of Python support opens so many doors which is creating a bit of a step change in the possibilities for data pipeline development.

Note, I am aware that Databricks has done this for years and that databases such as Azure Synapse Analytics offers Python via notebooks and that BigQuery also now supports Remote Functions…the beauty with Snowpark however is that it is truly native to the Database, as we will see.

Snowpark offers two main features of interest:

  • Snowpark Dataframe to SQL API
  • Native Python Support

Dataframes FTW

For anyone familiar with traditional dataframes, from packages such as Pandas or Databricks/Apache Spark, Snowpark dataframes will look very familiar. Snowpark allows you, the developer, to interact with the database objects via the concept of dataframes via the Python Snowpark package.

--

--

Mathew Partridge

Data Engineer, on prem and multi cloud data nerd with an AI generated profile pic 😜