Snowflake supports three types of tables, with different data retention durations:
- Permanent: The default table type. Creates a permanent table structure to be populated with data rows.
- Temporary: A temporary table can be Global or Local. A Local temporary table (AKA Volatile) persists for the duration of the user session in which it was created and is not visible to other users. A temporary table definition and its contents are dropped at the end of the user session.
- Transient: A non-permanent table. In contrast to temporary tables, transient tables exist until explicitly dropped and are visible to any user with the appropriate privileges. Transient tables have a lower level of data protection than permanent tables. Data in a transient table may be lost in the event of a system failure. Transient tables should only be used for data that can be recreated in the event that the data is lost.
The default data retention duration for permanent tables is 1 day (24 hours) and is automatically enabled for all Snowflake accounts unless a different value was specified at the account level. With a Premium Service Agreement, the standard retention period on permanent tables is configurable and can be extended up to 90 days.