In the previous article on Things to consider while configuring Snowflake Account - part I, we understood two important factors i.e Data retention and timezone. In this article, we will see security, cost savings, and connection performance. Let's start.
A] Security -
The security requirement for Snowflake has two parts.
a) Storage integration
We should not create external stages without storage integration. A Storage integration is secure means of creating connectivity between snowflake and cloud. storage provider. We need to set the below properties to `true ' so that we can prevent the exposure of access tokens or secret keys to snowflake users, the properties are
b) Network Policies.
It is important to prevent access from unwanted networks to the snowflake account. The network policies help to define a list of valid network locations for user connection.
We can configure account level and user-level network policies.
NETWORK_POLICY is a parameter associated with network policies.
B] Connection Performance
In order achieve better connection performance we need to set CLIENT_METADATA_REQUEST_USE_CONNECTION_CTX to value `TRUE'. This helps to reduce the amount of information used for JDBC and ODBC connections.
C] Cost Savings.
Cost of Snowflake implementation is dependent upon two factors 1) Users 2) Warehouses
1) User: In the snowflake account there are system users and human users. Set different configurations for each of these. Below are helpful parameters for users -
2) Warehouse: The optimum use of Snowflake warehouses can be achieved by resource monitoring, setting the appropriate warehouse size, and setting proper cluster count
The mentioned below are parameters of Warehouse
- RESOURCE MONITOR
- WAREHOUSE_ SIZE
Learn more about snowflake here-