SnowPark is Snowflake’s developer framework that enables building data-intensive applications directly within Snowflake using Python, Java, and Scala. This guide provides an overview of SnowPark’s features and practical usage.
SnowPark allows developers to:
pip install snowflake-snowpark-python
from snowflake.snowpark import Session
# Define Snowflake connection parameters
connection_parameters = {
"account": "<account_id>",
"user": "<username>",
"password": "<password>",
"role": "<role>",
"warehouse": "<warehouse>",
"database": "<database>",
"schema": "<schema>"
}
# Create SnowPark session
session = Session.builder.configs(connection_parameters).create()
Add the SnowPark dependency to your pom.xml
:
<dependency>
<groupId>com.snowflake</groupId>
<artifactId>snowpark</artifactId>
<version>1.0.0</version>
</dependency>
import com.snowflake.snowpark.Session;
import com.snowflake.snowpark.Row;
import java.util.List;
import java.util.Map;
public class SnowParkExample {
public static void main(String[] args) {
Session session = Session.builder()
.configs(Map.of(
"URL", "<account_id>.snowflakecomputing.com",
"USER", "<username>",
"PASSWORD", "<password>",
"ROLE", "<role>",
"WAREHOUSE", "<warehouse>",
"DATABASE", "<database>",
"SCHEMA", "<schema>"
))
.create();
List<Row> results = session.sql("SELECT CURRENT_TIMESTAMP").collect();
results.forEach(System.out::println);
session.close();
}
}
from snowflake.snowpark import Session
# Snowflake connection parameters
connection_parameters = {
"account": "<account_id>",
"user": "<username>",
"password": "<password>",
"warehouse": "<warehouse>",
"database": "<database>",
"schema": "<schema>"
}
# Create session
session = Session.builder.configs(connection_parameters).create()
# Create DataFrame
df = session.sql("SELECT * FROM EMPLOYEES WHERE SALARY > 50000")
# Perform transformations
filtered_df = df.filter(df["DEPARTMENT"] == "Sales")
# Show results
filtered_df.show()
# Close session
session.close()
SnowPark is a revolutionary framework that bridges the gap between data engineering and application development. With its rich language support and tight Snowflake integration, developers can build scalable and efficient data applications with ease.
Start exploring Snowflake SnowPark today to unlock its full potential in your data workflows!