The following new features, behavior changes, and updates (enhancements, fixes, etc.) have been introduced this month. If you have any questions about these additions, please contact Snowflake Support.
Each release may include updates that require the web interface to be refreshed.
As a general practice, to ensure these updates do not impact your usage, we recommend refreshing the web interface after each Snowflake release has been deployed.
Memoizable Functions — Preview¶
With this release, Snowflake is pleased to announce the preview of memoizable functions. A memoizable function caches the result of calling a user-defined function (UDF) and then returns the cached result when the output is needed at a later time. Using memoizable functions improves performance for complex queries, such as multiple column lookups in mapping tables referenced within a row access policy or masking policy. Currently, memoizable functions are available for scalar SQL UDFs only.
For details, refer to Memoizable UDFs.
Working with Amazon S3-compatible Storage — Preview¶
With this release, Snowflake is pleased to announce the preview of support for accessing data in Amazon S3-compatible storage. You can create external stages and external tables on software and devices, on premises or in a private cloud, that is highly compliant with Amazon S3 API. By using this feature, you can manage, govern, and analyze your data more easily and efficiently, regardless of where the data is physically stored.
Note that Amazon S3-compatible endpoints are not automatically enabled for all accounts. To request this feature, contact the Snowflake account team or Snowflake Support. Make sure that you verify the endpoints by using our public test suite (in GitHub) before sending the request.
For details, refer to Working With Amazon S3-compatible Storage.
Account Usage: New PASSWORD_POLICIES View¶
With this release, Snowflake adds a new view, PASSWORD_POLICIES, in the Account Usage schema of the shared SNOWFLAKE database. This view returns one row for each password policy in the account. Note that access to this view can be granted through the Snowflake-provided SECURITY_VIEWER database role.
For details, refer to PASSWORD_POLICIES View and SNOWFLAKE Database Roles.
Account Usage: New SESSION_POLICIES View¶
With this release, Snowflake adds a new view, SESSION_POLICIES, in the Account Usage schema of the shared SNOWFLAKE database. This view returns one row for each session policy in the account. Note that access to this view can be granted through the Snowflake-provided SECURITY_VIEWER database role.
For details, refer to SESSION_POLICIES View and SNOWFLAKE Database Roles.
Setting a Snowflake Scripting Variable to the Scalar Return Value from a Stored Procedure¶
With this release, you can use the new
INTO :snowflake_scripting_variable clause in a CALL statement
to capture a scalar return value from a stored procedure in a Snowflake Scripting variable. For example:
Note: If you are using SnowSQL or the classic web interface, use this example instead (refer to Using Snowflake Scripting in SnowSQL and the Classic Console):
DECLARE ret1 NUMBER; BEGIN CALL my_procedure('Manitoba', 127.4) into :ret1; RETURN ret1; END;
EXECUTE IMMEDIATE $$ DECLARE ret1 NUMBER; BEGIN CALL my_procedure('Manitoba', 127.4) into :ret1; RETURN ret1; END; $$ ;
New SQL Functions¶
The following function(s) were introduced in recent releases:
Aggregate Functions (General)
Finds the row(s) containing the minimum or maximum value for a specified column and returns the value of a second specified column for that row.
Data Governance Updates¶
Column Lineage — General Availability¶
With this release, Snowflake is pleased to announce the general availability of column lineage. Column lineage (i.e. Access History for columns) extends the OBJECTS_MODIFIED column in the Account Usage ACCESS_HISTORY view to specify how data flows from the source column to the target column in a write operation. Snowflake tracks the data from the source columns through all subsequent table objects that reference data from the source columns (e.g. INSERT, MERGE, CTAS).
This feature was announced in preview in October 2022. For details, refer to Access History and the ACCESS_HISTORY View.