### Apache Airflow Provider(s)

snowflake

### Versions of Apache Airflow Providers

apache-airflow-providers-snowflake==2.2.0 

### Apache Airflow version

2.2.0

### Operating System

Linux-5.4.141-67.229.amzn2.x86_64-x86_64-with-glibc2.31

### Deployment

Astronomer

### Deployment details

_No response_

### What happened

The `get_connection()` method is called twice in the SnowflakeHook, initializing the connection twice and slowing the hook down. See the following example logs on a single `run` of the SnowflakeHook:


<img width="1383" alt="Screen Shot 2021-11-09 at 9 59 26 PM" src="https://user-images.githubusercontent.com/30101670/141052877-648a5543-cf9a-4c16-82a6-02f6b62b47ba.png">



### What you expected to happen

The code is using the `get_connection` method on [line 271](https://github.com/apache/airflow/blob/main/airflow/providers/snowflake/hooks/snowflake.py#L271) and then calling the method again on [line 272](https://github.com/apache/airflow/blob/main/airflow/providers/snowflake/hooks/snowflake.py#L272)

### How to reproduce

Run the SnowflakeHook

### Anything else

_No response_

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

airflow/providers/snowflake/hooks/snowflake.py
"""Returns connection widgets to add to connection form"""
        from flask_appbuilder.fieldwidgets import BS3PasswordFieldWidget, BS3TextFieldWidget
        from flask_babel import lazy_gettext
        from wtforms import PasswordField, StringField
        return {
            "extra__snowflake__account": StringField(lazy_gettext('Account'), widget=BS3TextFieldWidget()),
            "extra__snowflake__warehouse": StringField(
                lazy_gettext('Warehouse'), widget=BS3TextFieldWidget()
            ),
            "extra__snowflake__database": StringField(lazy_gettext('Database'), widget=BS3TextFieldWidget()),
            "extra__snowflake__region": StringField(lazy_gettext('Region'), widget=BS3TextFieldWidget()),
            "extra__snowflake__aws_access_key_id": StringField(
                lazy_gettext('AWS Access Key'), widget=BS3TextFieldWidget()
            ),
            "extra__snowflake__aws_secret_access_key": PasswordField(
                lazy_gettext('AWS Secret Key'), widget=BS3PasswordFieldWidget()
            ),
            "extra__snowflake__role": StringField(lazy_gettext('Role'), widget=BS3TextFieldWidget()),
        }
    @staticmethod
    def get_ui_field_behaviour() -> Dict: