# Snowflake

In this article, we will be looking at loading data from Snowflake tables and using the data for the following tasks:

1. Onboarding a model to Fiddler
2. Uploading baseline data to Fiddler
3. Publishing production data to Fiddler

## Import data from Snowflake

In order to import data from Snowflake to a Jupyter notebook, we will use the snowflake library which can be installed using the following command in your Python environment.

```python
pip install snowflake-connector-python
```

The following information is required in order to establish a connection to Snowflake:

* Snowflake Warehouse
* Snowflake Role
* Snowflake Account
* Snowflake User
* Snowflake Password

These values can be obtained from your Snowflake account under the ‘Admin’ option in the Menu as shown below or by running the queries below:

* Warehouse - select CURRENT\_WAREHOUSE()
* Role - select CURRENT\_ROLE()
* Account - select CURRENT\_ACCOUNT()

'User' and 'Password' are the same that you use when logging in to your Snowflake account.

![Example Snowflake dashboard showing the Warehouse tab.](/files/jv14mAxN4BuIsUyo4iVM)

Once you have this information, you can set up a Snowflake connector using the following code:

```python
# establish Snowflake connection
connection = connector.connect(
  user=snowflake_username,
  password=snowflake_password,
  account=snowflake_account,
  role=snowflake_role,
  warehouse=snowflake_warehouse
)
```

You can then write a custom SQL query and import the data to a pandas dataframe.

```python
# sample SQL query
sql_query = 'select * from FIDDLER.FIDDLER_SCHEMA.CHURN_BASELINE LIMIT 100'

# create cursor object
cursor = connection.cursor()

# execute SQL query inside Snowflake
cursor.execute(sql_query)

baseline_df = cursor.fetch_pandas_all()
```

## Publish Production Events

Now that we have data imported from Snowflake to a dataframe, we can refer to the following pages to:

1. [Onboard a model](/developers/client-library-reference/model-onboarding/create-a-project-and-model.md) using the baseline dataset for the model schema inference sample.
2. [Upload a Baseline dataset](/developers/client-library-reference/publishing-production-data/creating-a-baseline-dataset.md), which is optional but recommended for monitoring comparisons.
3. [Publish production events](/developers/client-library-reference/publishing-production-data.md) for continuous monitoring.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fiddler.ai/integrations/data-platforms-and-pipelines/data-platforms/snowflake-integration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
