What should be considered when deciding to use a secure view? (Select TWO).
No details of the query execution plan will be available in the query profiler.
Once created there is no way to determine if a view is secure or not.
Secure views do not take advantage of the same internal optimizations as standard views.
It is not possible to create secure materialized views.
The view definition of a secure view is still visible to users by way of the information schema.
When deciding to use a secure view, several considerations come into play, especially concerning security and performance:
A. No details of the query execution plan will be available in the query profiler: Secure views are designed to prevent the exposure of the underlying data and the view definition to unauthorized users. Because of this, the detailed execution plans for queries against secure views are not available in the query profiler. This is intended to protect sensitive data from being inferred through the execution plan.
C. Secure views do not take advantage of the same internal optimizations as standard views: Secure views, by their nature, limit some of the optimizations that can be applied compared to standard views. This is because they enforce row-level security and mask data, which can introduce additional processing overhead and limit the optimizer's ability to apply certain efficiencies that are available to standard views.
B. Once created, there is no way to determine if a view is secure or not is incorrect because metadata about whether a view is secure can be retrieved from the INFORMATION_SCHEMA views or by using the SHOW VIEWS command.
D. It is not possible to create secure materialized views is incorrect because the limitation is not on the security of the view but on the fact that Snowflake currently does not support materialized views with the same dynamic data masking and row-level security features as secure views.
E. The view definition of a secure view is still visible to users by way of the information schema is incorrect because secure views specifically hide the view definition from users who do not have the privilege to view it, ensuring that sensitive information in the definition is not exposed.
Which statement describes Snowflake tables?
Snowflake tables arc logical representation of underlying physical data.
Snowflake tables are the physical instantiation of data loaded into Snowflake.
Snowflake tables require that clustering keys be defined lo perform optimally.
Snowflake tables are owned by a use.
In Snowflake, tables represent a logical structure through which users interact with the stored data. The actual physical data is stored in micro-partitions managed by Snowflake, and the logical table structure provides the means by which SQL operations are mapped to this data. This architecture allows Snowflake to optimize storage and querying across its distributed, cloud-based data storage system.References: Snowflake Documentation on Tables
Which data types can be used in a Snowflake table that holds semi-structured data? (Select TWO).
ARRAY
BINARY
TEXT
VARIANT
VARCHAK
Snowflake supports semi-structured data types that can store complex data structures within a single column. The VARIANT data type can hold structured and semi-structured data formats such as JSON, Avro, ORC, Parquet, and XML. The ARRAY data type is also used for semi-structured data and can store an ordered list of elements. These data types enable users to work with semi-structured data directly in Snowflake without needing to flatten the data into a relational schema first.References: Snowflake Documentation on Semi-Structured Data Types
What persistent data structures are used by the search optimization service to improve the performance of point lookups?
Micro-partitions
Clustering keys
Equality searches
Search access paths
The search optimization service in Snowflake uses persistent data structures known as search access paths to improve the performance of point lookups. These structures enable efficient retrieval of data by reducing the amount of data scanned during queries.
Search Access Paths:
Search access paths are special indexing structures maintained by the search optimization service.
They store metadata about the distribution of data within tables, enabling faster lookups for specific values.
Point Lookups:
Point lookups involve searching for a specific value within a column.
By leveraging search access paths, Snowflake can quickly locate the exact micro-partition containing the value, minimizing the amount of data scanned.
Performance Improvement:
The use of search access paths significantly reduces query execution time for point lookups.
This is especially beneficial for large tables where scanning all micro-partitions would be computationally expensive.
References:
Snowflake Documentation: Search Optimization Service
Snowflake Documentation: Understanding Search Access Paths
Which semi-structured file format is a compressed, efficient, columnar data representation?
Avro
JSON
TSV
Parquet
Parquet is a columnar storage file format that is optimized for efficiency in both storage and processing. It supports compression and encoding schemes that significantly reduce the storage space needed and speed up data retrieval operations, making it ideal for handling large volumes of data. Unlike JSON or TSV, which are row-oriented and typically uncompressed, Parquet is designed specifically for use with big data frameworks, offering advantages in terms of performance and cost when storing and querying semi-structured data.References: Apache Parquet Documentation
What is the benefit of using the STRIP_OUTER_ARRAY parameter with the COPY INTO