Snowflake ADA-C01 Questions and Answers Guarantee you Oass the Test Easily Share Latest ADA-C01 DUMP with 65 Questions and Answers NEW QUESTION # 30 A Snowflake customer is experiencing higher costs than anticipated while migrating their data warehouse workloads from on-premises to Snowflake. The migration workloads have been deployed on a single warehouse and are characterized by a large number of [...]

Snowflake ADA-C01 Questions and Answers Guarantee you Oass the Test Easily [Q30-Q51]

Share

Snowflake ADA-C01 Questions and Answers Guarantee you Oass the Test Easily

Share Latest ADA-C01 DUMP with 65 Questions and Answers

NEW QUESTION # 30
A Snowflake customer is experiencing higher costs than anticipated while migrating their data warehouse workloads from on-premises to Snowflake. The migration workloads have been deployed on a single warehouse and are characterized by a large number of small INSERTs rather than bulk loading of large extracts. That single warehouse has been configured as a single cluster, 2XL because there are many parallel INSERTs that are scheduled during nightly loads.
How can the Administrator reduce the costs, while minimizing the overall load times, for migrating data warehouse history?

  • A. The 2XL warehouse should be changed to 4XL to increase the number of threads available for parallel load queries.
  • B. There should be another 2XL warehouse deployed to handle a portion of the load queries.
  • C. The warehouse should be kept as a SMALL or XSMALL and configured as a multi-cluster warehouse to handle the parallel load queries.
  • D. The INSERTS should be converted to several tables to avoid contention on large tables that slows down query processing.

Answer: C

Explanation:
Explanation
According to the Snowflake Warehouse Cost Optimization blog post, one of the strategies to reduce the cost of running a warehouse is to use a multi-cluster warehouse with auto-scaling enabled. This allows the warehouse to automatically adjust the number of clusters based on the concurrency demand and the queue size. A multi-cluster warehouse can also be configured with a minimum and maximum number of clusters, as well as a scaling policy to control the scaling behavior. This way,the warehouse can handle the parallel load queries efficiently without wasting resources or credits. The blog post also suggests using a smaller warehouse size, such as SMALL or XSMALL, for loading data, as it can perform better than a larger warehouse size for small INSERTs. Therefore, the best option to reduce the costs while minimizing the overall load times for migrating data warehouse history is to keep the warehouse as a SMALL or XSMALL and configure it as a multi-cluster warehouse to handle the parallel load queries. The other options are incorrect because:
*A. Deploying another 2XL warehouse to handle a portion of the load queries will not reduce the costs, but increase them. It will also introduce complexity and potential inconsistency in managing the data loading process across multiple warehouses.
*B. Changing the 2XL warehouse to 4XL will not reduce the costs, but increase them. It will also provide more compute resources than needed for small INSERTs, which are not CPU-intensive but I/O-intensive.
*D. Converting the INSERTs to several tables will not reduce the costs, but increase them. It will also create unnecessary data duplication and fragmentation, which will affect the query performance and data quality.


NEW QUESTION # 31
A company has implemented Snowflake replication between two Snowflake accounts, both of which are running on a Snowflake Enterprise edition. The replication is for the database APP_DB containing only one schema, APP_SCHEMA. The company's Time Travel retention policy is currently set for 30 days for both accounts. An Administrator has been asked to extend the Time Travel retention policy to 60 days on the secondary database only.
How can this requirement be met?

  • A. Set the data retention policy on the primary database to 30 days and the schemas to 60 days.
  • B. Set the data retention policy on the primary database to 60 days.
  • C. Set the data retention policy on the schemas in the secondary database to 60 days.
  • D. Set the data retention policy on the secondary database to 60 days.

Answer: D

Explanation:
Explanation
According to the Replication considerations documentation, the Time Travel retention period for a secondary database can be different from the primary database. The retention period can be set at the database, schema, or table level using the DATA_RETENTION_TIME_IN_DAYS parameter. Therefore, to extend the Time Travel retention policy to 60 days on the secondary database only, the best option is to set the data retention policy on the secondary database to 60 days using the ALTER DATABASE command. The other options are incorrect because:
*B. Setting the data retention policy on the schemas in the secondary database to 60 days will not affect the database-level retention period, which will remain at 30 days. The most specific setting overrides the more general ones, so the schema-level setting will apply to the tables in the schema, but not to the database itself.
*C. Setting the data retention policy on the primary database to 30 days and the schemas to 60 days will not affect the secondary database, which will have its own retention period. The replication process does not copy the retention period settings from the primary to the secondary database, so they can be configured independently.
*D. Setting the data retention policy on the primary database to 60 days will not affect the secondary database, which will have its own retention period. The replication process does not copy the retention period settings from the primary to the secondary database, so they can be configured independently.


NEW QUESTION # 32
An Administrator has a table named SALES_DATA which needs some edits, but the Administrator does not want to change the main table data. The Administrator decides to make a transient copy of this table and wants the transient table to have all the same permissions as the original table.
How can the Administrator create the transient table so it inherits the same permissions as the original table, and what considerations need to be made concerning the requirements? (Select TWO).

  • A. Transient tables will be purged at the end of the user session and do not have any Fail-safe period.
  • B. Use the following SQL command:
    create transient table TRANSIENT_SALES_DATA as select * from SALES_DATA;
  • C. Use the following SQL command:
    create transient table TRANSIENT SALES DATA as select * from SALES_DATA copy grants;
  • D. Use the following SQL commands:
    create transient table TRANSIENT_SALES_DATA like SALES_DATA copy grants; insert into TRANSIENT_SALES_DATA select * from SALES_DATA;
  • E. Transient tables will persist until explicitly dropped and contribute to overall storage costs.

Answer: C,E

Explanation:
Explanation
According to the Snowflake documentation1, the COPY GRANTS option can be used to copy all privileges, except OWNERSHIP, from the existing table to the new transient table. This option also preserves any future grants defined for the object type in the schema. Option A is incorrect because it does not copy any grants from the original table. Option C is incorrect because it does not copy the data from the original table, only the structure and grants. Option E is incorrect because transient tables are not session-based and do not have a Fail-safe period, but they do have a Time Travel retention period2.
1: CREATE TABLE | Snowflake Documentation 2: Working with Temporary and Transient Tables | Snowflake Documentation


NEW QUESTION # 33
What session parameter can be used to test the integrity of secure views based on the account that is accessing that view?

  • A. SIMULATED_DATA_SHARING_CONSUMER
  • B. TEST_ACCOUNT_ID
  • C. PRODUCER_TEST_ACCT
  • D. MIMIC_CONSUMER_ACCOUNT

Answer: A

Explanation:
Explanation
The SIMULATED_DATA_SHARING_CONSUMER session parameter allows a data provider to test the integrity of secure views based on the account that is accessing that view2. By setting this parameter to the name of the consumer account, the data provider can query the secure view and see the results that a user in the consumer account will see2. This helps to ensure that sensitive data in a shared database is not exposed to unauthorized users1. The other options are not valid session parameters in Snowflake3


NEW QUESTION # 34
A requirement has been identified to allow members of a corporate Data Product team to bring in data sets from the Snowflake Marketplace. The members of this team use the role DP_TEAM.
What grant statements must the ACCOUNTADMIN execute in order for the DP TEAM role to import and work with data from the Marketplace?

  • A. grant import share on account to role dp_team;
    grant create database on account to role dp_team;
  • B. grant marketplace in account to role dp_team;
    grant create database from share to role dp_team;
  • C. grant imported privileges on account to role dp_team;
    grant create database on account to role dp_team;
  • D. grant usage on snowflake_marketplace to role dp_team;
    grant create database on account to role dp_team;

Answer: A

Explanation:
Explanation
Option D is the correct answer because it follows the steps described in the Snowflake documentation for importing data from the Snowflake Marketplace. The ACCOUNTADMIN role needs to grant the IMPORT SHARE privilege on the account to the DP_TEAM role, which allows the role to import data from any provider in the marketplace. The ACCOUNTADMIN role also needs to grant the CREATE DATABASE privilege on the account to the DP_TEAM role, which allows the role to create a database from a share. Option A is incorrect because there is no MARKETPLACE privilege in Snowflake. Option B is incorrect because the USAGE privilege on SNOWFLAKE_MARKETPLACE is not sufficient to import data from the marketplace.
Option C is incorrect because there is no IMPORTED PRIVILEGES privilege in Snowflake.


NEW QUESTION # 35
Which masking policy will mask a column whenever it is queried through a view owned by a role named MASKED_VIEW_ROLE?

  • A. create or replace masking policy maskstring as (val string) returns string -> case when is_role_in_session ('MASKED_VIEW_ROLE') then ' ** else val end;
    *,
  • B. create or replace masking policy maskString as (val string) returns string -> case when array_contains ('MASKED_VIEW_ROLE' :: variant, parse_json (current_available_roles ())) then
    '*
    else val
    end;
    ** '
  • C. create or replace masking policy maskString as (val string) returns string -> case when current_role() in ('MASKED_VIEW_ROLE') then ' ********* ' else val end;
  • D. create or replace masking policy maskstring as (val string) returns string -> case when invoker_role() in ('MASKED_VIEW_ROLE') then else val end;
    ' **

Answer: A

Explanation:
Explanation
A masking policy is a SQL expression that transforms the data in a column based on the role that queries the column1. The is_role_in_session function returns true if the specified role is in the current session2. Therefore, the masking policy in option A will mask the column data with asterisks whenever it is queried through a view owned by the MASKED_VIEW_ROLE3. The other options use different functions that do not check the ownership of the view, but rather the current role, the invoker role, or the available roles in the session45.
These functions may not return the desired result if the role that owns the view is different from the role that queries the view.


NEW QUESTION # 36
When a role is dropped, which role inherits ownership of objects owned by the dropped role?

  • A. The SYSADMIN role
  • B. The role above the dropped role in the RBAC hierarchy
  • C. The SECURITYADMIN role
  • D. The role executing the command

Answer: B

Explanation:
Explanation
According to the Snowflake documentation1, when a role is dropped, ownership of all objects owned by the dropped role is transferred to the role that is directly above the dropped role in the role hierarchy. This is to ensure that there is always a single owner for each object in the system.
1: Drop Role | Snowflake Documentation


NEW QUESTION # 37
If the query matches the definition, will Snowflake always dynamically rewrite the query to use a materialized view?

  • A. Yes, because materialized views are always faster.
  • B. No, because the optimizer might decide against it.
  • C. No, because the materialized view may not be up-to-date.
  • D. No, because joins are not supported by materialized views.

Answer: B

Explanation:
Explanation
Snowflake's query optimizer can automatically rewrite queries against the base table or regular views to use the materialized view instead, if the query matches the definition of the materialized view1. However, this is not always guaranteed, as the optimizer might decide against using the materialized view based on various factors, such as the freshness of the data, the size of the result set, the complexity of the query, and the availability of the materialized view2. Therefore, the answer is no, because the optimizer might decide against it.


NEW QUESTION # 38
Which function is the role SECURITYADMIN responsible for that is not granted to role USERADMIN?

  • A. Create new roles
  • B. Reset a Snowflake user's password
  • C. Create new users
  • D. Manage system grants

Answer: D

Explanation:
Explanation
According to the Snowflake documentation1, the SECURITYADMIN role is responsible for managing all grants on objects in the account, including system grants. The USERADMIN role can only create and manage users and roles, but not grant privileges on other objects. Therefore, the function that is unique to the SECURITYADMIN role is to manage system grants. Option A is incorrect because both roles can reset a user's password. Option C is incorrect because both roles can create new users. Option D is incorrect because both roles can create new roles.


NEW QUESTION # 39
Which actions are considered breaking changes to data that is shared with consumers in the Snowflake Marketplace? (Select TWO).

  • A. Dropping a column from a table
  • B. Unpublishing the data listing
  • C. Adding region availability to the listing
  • D. Renaming a table
  • E. Deleting data from a table

Answer: A,D

Explanation:
Explanation
According to the Snowflake documentation1, breaking changes are changes that affect the schema or structure of the shared data, such as dropping or renaming a column or a table. These changes may cause errors or unexpected results for the consumers who query the shared data. Deleting data from a table, unpublishing the data listing, or adding region availability to the listing are not breaking changes, as they do not alter the schema or structure of the shared data.
1: Managing Data Listings in Snowflake Data Marketplace | Snowflake Documentation


NEW QUESTION # 40
A large international company with many operating regions requires data to be shared bi-directionally among all offices (head office to regional offices and regional offices among themselves). This company is a Snowflake account holder with European operations deployed in Microsoft Azure (single region) while North American regional offices are using AWS (single region) as their deployment cloud. This setup is required to comply with Personal Identifiable Information (PII) regulations in some of the European countries. The corporate head office is in Europe.
How can this data be shared bi-directionally, while MINIMIZING costs?

  • A. Move all the Snowflake accounts to a single region, and implement data sharing.
  • B. Use the PUT command to move files to an Amazon S3 bucket and Azure Blobs, and use an external file management application to move files within the corporate VPC.
  • C. Use bi-directional data sharing among offices in the same region and replication among offices across the continents.
  • D. Use data replication everywhere to reduce costs associated with same-region sharing.

Answer: C

Explanation:
Explanation
According to the Snowflake documentation1, data sharing is a feature that allows sharing selected objects in a database in one account with other accounts in the same organization, without copying or transferring any data. Data sharing is supported across regions and across cloud platforms, but it requires enabling account database replication for both the source and target accounts2. Data replication is a feature that allows replicating objects from a source account to one or more target accounts in the same organization, providing read-only access for the replicated objects. Data replication is also supported across regions and across cloud platforms, but it incurs additional storage costs for the replicated data2. Therefore, the best way to share data bi-directionally among all offices, while minimizing costs, is to use data sharing among offices in the same region, which does not require replication or additional storage, and use replication among offices across the continents, which provides near real-time access to the shared data. Option A is incorrect because using data replication everywhere would increase the costs associated with additional storage and compute resources for the replicated data. Option B is incorrect because using the PUT command to move files to an Amazon S3 bucket and Azure Blobs, and using an external file management application to move files within the corporate VPC, would not leverage the benefits of Snowflake's data sharing and replication features, and would also incur additional costs and complexity for data transfer and synchronization. Option C is incorrect because moving all the Snowflake accounts to a single region would violate the PII regulations in some of the European countries, and would also incur additional costs and complexity for data migration and consolidation.


NEW QUESTION # 41
Which command can temporarily disable Multi-factor Authentication (MFA) for the Snowflake username user1 for 24 hours?

  • A. alter user userl set MINS_TO_BYPASS_MFA=1440;
  • B. alter user userl set DISABLE_MFA=1440;
  • C. alter user userl set HOURS_TO_BYPASS_MFA=24;
  • D. alter user userl set TEMPORARY_MFA_BYPASS=1440;

Answer: A

Explanation:
Explanation
According to the Snowflake documentation1, the MINS_TO_BYPASS_MFA property specifies the number of minutes to temporarily disable MFA for a user so that they can log in without the temporary token generated by the Duo Mobile application. After the time passes, MFA is enforced and the user cannot log in without the token. Therefore, to disable MFA for 24 hours, the value of this property should be set to 1440 minutes (24 x
60). Option B is incorrect because the DISABLE_MFA property is a boolean value that permanently disables MFA for a user, not a numeric value that specifies the duration. Option C is incorrect because there is no such property as TEMPORARY_MFA_BYPASS in Snowflake. Option D is incorrect because there is no such property as HOURS_TO_BYPASS_MFA in Snowflake.


NEW QUESTION # 42
What is required for stages, without credentials, to limit data exfiltration after a storage integration and associated stages are created?

  • A. ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION = true;
    ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION = true;
    ALTER ACCOUNT my_account SET
    PREVENT_UNLOAD_TO_INLINE_URL = false;
  • B. ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION = false;
    ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION = false;
    ALTER ACCOUNT my_account SET
    PREVENT_UNLOAD_TO_INLINE_URL = false;
  • C. ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION = true;
    ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION FOR STAGE_OPERATION = true;
    ALTER ACCOUNT my_account SET
    PREVENT_UNLOAD_TO_INLINE_URL = true;
  • D. ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION = false;
    ALTER ACCOUNT my_account SET
    REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION = false;
    ALTER ACCOUNT my_account SET
    PREVENT_UNLOAD_TO_INLINE_URL = true;

Answer: C

Explanation:
Explanation
According to the Snowflake documentation1, stages without credentials are a way to create external stages that use storage integrations to access data files in cloud storage without providing any credentials to Snowflake.
Storage integrations are objects that define a trust relationship between Snowflake and a cloud provider, allowing Snowflake to authenticate and authorize access to the cloud storage. To limit data exfiltration after a storage integration and associated stages are created, the following account-level parameters can be set:
*REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION: This parameter enforces that all external stages must be created using a storage integration. This prevents users from creating external stages with inline credentials or URLs that point to unauthorized locations.
*REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION: This parameter enforces that all operations on external stages, such as PUT, GET, COPY, and LIST, must use a storage integration. This prevents users from performing operations on external stages with inline credentials or URLs that point to unauthorized locations.
*PREVENT_UNLOAD_TO_INLINE_URL: This parameter prevents users from unloading data from Snowflake tables to inline URLs that do not use a storage integration. This prevents users from exporting data to unauthorized locations.
Therefore, the correct answer is option D, which sets all these parameters to true. Option A is incorrect because it sets PREVENT_UNLOAD_TO_INLINE_URL to false, which allows users to unload data to inline URLs that do not use a storage integration. Option B is incorrect because it sets both REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_CREATION and REQUIRE_STORAGE_INTEGRATION_FOR_STAGE_OPERATION to false, which allows users to create and operate on external stages without using a storage integration. Option C is incorrect because it sets all the parameters to false, which does not enforce any restrictions on data exfiltration.


NEW QUESTION # 43
DatabaseA has a single schema called Schema1. This schema contains many tables and views. The ANALYST role has privileges to select from all objects in DatabaseA. Schema1. The SYSADMIN role clones DatabaseA to DatabaseA_clone.
What privileges does the ANALYST role have on tables and views in DatabaseA_clone? (Select TWO).

  • A. USAGE on the database DatabaseA_clone. Schemal
  • B. SELECT on all tables, and only secure views in DatabaseA_clone. Schemal
  • C. SELECT on all tables, and only non-secure views in DatabaseA_clone. Schemal
  • D. USAGE on the schema DatabaseA clone
  • E. SELECT on all tables and views in DatabaseA_clone. Schema1

Answer: C,E

Explanation:
Explanation
According to the Snowflake documentation, when a database or schema is cloned, the clone inherits all granted privileges on the clones of all child objects contained in the source object, such as tables and views.
However, the clone of the container itself does not inherit the privileges granted on the source container.
Therefore, the ANALYST role will have SELECT privilege on all tables and views in DatabaseA_clone.Schema1, but not USAGE privilege on the database or schema. The type of view (secure or non-secure) does not affect the cloning of privileges.


NEW QUESTION # 44
What access control policy will be put into place when future grants are assigned to both database and schema objects?

  • A. Database privileges will take precedence over schema privileges.
  • B. An access policy combining both the database object and the schema object will be used, with the most permissive policy taking precedence.
  • C. Schema privileges will take precedence over database privileges.
  • D. An access policy combining both the database object and the schema object will be used, with the most restrictive policy taking precedence.

Answer: C

Explanation:
Explanation
When future grants are defined on the same object type for a database and a schema in the same database, the schema-level grants take precedence over the database level grants, and the database level grants are ignored4.
This behavior applies to privileges on future objects granted to one role or different roles4. Future grants allow defining an initial set of privileges to grant on new (i.e. future) objects of a certain type in a database or a schema3. As soon as the new objects are created inside the database or schema, the predefined set of privileges are assigned to the object automatically without any manual intervention3.


NEW QUESTION # 45
For Snowflake network policies, what will occur when the account_level and user_level network policies are both defined?

  • A. A network policy error will be generated with no definitions provided.
  • B. The account_level policy will override the user_level policy.
  • C. The user_level policy will override the account_level policy.
  • D. The user_level network policies will not be supported.

Answer: C

Explanation:
Explanation
According to the Network Policies documentation, a network policy can be applied to an account, a security integration, or a user. If there are network policies applied to more than one of these, the most specific network policy overrides more general network policies. The following summarizes the order of precedence:
*Account: Network policies applied to an account are the most general network policies. They are overridden by network policies applied to a security integration or user.
*Security Integration: Network policies applied to a security integration override network policies applied to the account, but are overridden by a network policy applied to a user.
*User: Network policies applied to a user are the most specific network policies. They override both accounts and security integrations.
Therefore, if both the account_level and user_level network policies are defined, the user_level policy will take effect and the account_level policy will be ignored. The other options are incorrect because:
*The account_level policy will not override the user_level policy, as explained above.
*The user_level network policies will be supported, as they are part of the network policyfeature.
*A network policy error will not be generated, as there is no conflict between the account_level and user_level network policies.


NEW QUESTION # 46
Which commands can be performed by a user with the ORGADMIN role but not the ACCOUNTADMIN role? (Select TWO).

  • A. SHOW ORGANIZATION ACCOUNTS;
  • B. SHOW REGIONS;
  • C. SELECT SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER (
    'ACCOUNT LOCATOR',
    'ENABLE ACCOUNT DATABASE_REPLICATION',
    'true'
    );
  • D. SHOW USERS;
  • E. GRANT ROLE ORGADMIN TO USER <username>;

Answer: A,C

Explanation:
Explanation
According to the Snowflake documentation1, the ORGADMIN role is a special system role that is responsible for managing operations at the organization level, such as creating and viewing accounts, enabling database replication, and setting global account parameters. The ACCOUNTADMIN role is a system role that is responsible for managing operations at the account level, such as creating and managing users, roles, warehouses, databases, and shares. Therefore, the commands that can be performed by the ORGADMIN role but not the ACCOUNTADMIN role are:
*SHOW ORGANIZATION ACCOUNTS: This command lists all the accounts in the organization and their properties, such as region, edition, and status2. The ACCOUNTADMIN role can only show the current account and its properties using the SHOW ACCOUNTS command3.
*SELECT SYSTEM$GLOBAL_ACCOUNT_SET_PARAMETER: This function sets a global account parameter for an account in the organization, such as enabling account database replication4. The ACCOUNTADMIN role can only set local account parameters using the ALTER ACCOUNT command.
Option A is incorrect because the SHOW REGIONS command can be executed by any role, not just the ORGADMIN role. Option B is incorrect because the SHOW USERS command can be executed by the ACCOUNTADMIN role, as well as any role that has been granted the MONITOR privilege on the account.
Option D is incorrect because the GRANT ROLE ORGADMIN TO USER <username> command can be executed by the ACCOUNTADMIN role, as well as any role that has been granted the ORGADMIN role1.


NEW QUESTION # 47
A Snowflake Administrator needs to persist all virtual warehouse configurations for auditing and backups.
Given a table already exists with the following schema:
Table Name:VWH_META
Column 1:SNAPSHOT_TIME TIMESTAMP_NTZ
Column 2:CONFIG VARIANT
Which commands should be executed to persist the warehouse data at the time of execution in JSON format in the table VWH META?

  • A. 1. SHOW WAREHOUSES;
    2. INSERT INTO VWH META
    SELECT CURRENT TIMESTAMP (), *
    FROM TABLE (RESULT_SCAN (LAST_QUERY_ID ())) ;
  • B. 1. SHOW WAREHOUSES;
    2. INSERT INTO VWH_META
    SELECT CURRENT_TIMESTAMP (),
    OBJECT CONSTRUCT (*)
    FROM TABLE (RESULT_SCAN (LAST_QUERY_ID ()));
  • C. 1. SHOW WAREHOUSES;
    2. INSERT INTO VWH META
    SELECT CURRENT TIMESTAMP (),
    FROM TABLE (RESULT_SCAN (LAST_QUERY_ID(1) ) ) ;
  • D. 1. SHOW WAREHOUSES;
    2. INSERT INTO VWH META
    SELECT CURRENT TIMESTAMP (), *
    FROM TABLE (RESULT_SCAN (SELECT
    LAST QUERY ID(-1)));

Answer: B

Explanation:
Explanation
According to the Using Persisted Query Results documentation, the RESULT_SCAN function allows you to query the result set of a previous command as if it were a table. The LAST_QUERY_ID function returns the query ID of the most recent statement executed in the current session. Therefore, the combination of these two functions can be used to access the output of the SHOW WAREHOUSES command, which returns the configurations of all the virtual warehouses in the account. However, to persist the warehouse data in JSON format in the table VWH_META, the OBJECT_CONSTRUCT function is needed to convert the output of the SHOW WAREHOUSES command into a VARIANT column. The OBJECT_CONSTRUCT function takes a list of key-value pairs and returns a single JSON object. Therefore, the correct commands to execute are:
1.SHOW WAREHOUSES;
2.INSERT INTO VWH_META SELECT CURRENT_TIMESTAMP (), OBJECT_CONSTRUCT (*) FROM TABLE (RESULT_SCAN (LAST_QUERY_ID ())); The other options are incorrect because:
*A. This option does not use the OBJECT_CONSTRUCT function, so it will not persist the warehouse data in JSON format. Also, it is missing the * symbol in the SELECT clause, so it will not select any columns from the result set of the SHOW WAREHOUSES command.
*B. This option does not use the OBJECT_CONSTRUCT function, so it will not persist the warehouse data in JSON format. It will also try to insert multiple columns into a single VARIANT column, which will cause a type mismatch error.
*D. This option does not use the OBJECT_CONSTRUCT function, so it will not persist the warehouse data in JSON format. It will also try to use the RESULT_SCAN function on a subquery, which is not supported. The RESULT_SCAN function can only be used on a query ID or a table name.


NEW QUESTION # 48
What SCIM integration types are supported in Snowflake? (Select THREE).

  • A. Okta
  • B. Custom
  • C. Duo Security Provisioning Connector
  • D. Azure Active Directory (Azure AD)
  • E. Google Cloud Platform (GCP)
  • F. Amazon Web Services (AWS)

Answer: A,B,D

Explanation:
Explanation
According to the Snowflake documentation1, Snowflake supports SCIM 2.0 to integrate Snowflake with Okta and Microsoft Azure AD, which both function as identity providers. Snowflake also supports identity providers that are neither Okta nor Microsoft Azure (i.e. Custom). Therefore, theSCIM integration types that are supported in Snowflake are Okta, Custom, and Azure AD. Option A is incorrect because Amazon Web Services (AWS) is not a SCIM identity provider. Option B is incorrect because Google Cloud Platform (GCP) is not a SCIM identity provider. Option F is incorrect because Duo Security Provisioning Connector is not a SCIM identity provider.


NEW QUESTION # 49
A virtual warehouse report_wh is configured with AUTO_RESUME=TRUE and AUTO_SUSPEND=300. A user has been granted the role accountant.
An application with the accountant role should use this warehouse to run financial reports, and should keep track of compute credits used by the warehouse.
What minimal privileges on the warehouse should be granted to the role to meet the requirements for the application? (Select TWO).

  • A. MONITOR
  • B. OPERATE
  • C. USAGE
  • D. OWNERSHIP
  • E. MODIFY

Answer: A,C

Explanation:
Explanation
According to the Snowflake documentation1, the MONITOR privilege on a warehouse grants the ability to view the warehouse usage and performance metrics, such as the number of credits consumed, the average and maximum run time, and the number of queries executed. The USAGE privilege on a warehouse grants the ability to use the warehouse to execute queries and load data. Therefore, the minimal privileges on the warehouse that should be granted to the role to meet the requirements for the application are MONITOR and USAGE. Option A is incorrect because the OPERATE privilege on a warehouse grants the ability to start, stop, resume, and suspend the warehouse, which is not required for the application. Option B is incorrect because the MODIFY privilege on a warehouse grants the ability to alter the warehouse properties, such as the size, auto-suspend, and auto-resume settings, which is not required for the application. Option E is incorrect because the OWNERSHIP privilege on a warehouse grants the ability to drop the warehouse, grant or revoke privileges on the warehouse, and transfer the ownership to another role, which is not required for the application.


NEW QUESTION # 50
MY_TABLE is a table that has not been updated or modified for several days. On 01 January 2021 at 07:01, a user executed a query to update this table. The query ID is
'8e5d0ca9-005e-44e6-b858-a8f5b37c5726'. It is now 07:30 on the same day.
Which queries will allow the user to view the historical data that was in the table before this query was executed? (Select THREE).

  • A. SELECT * FROM TIME_TRAVEL ('MY_TABLE', 2021-01-01 07:00:00);
  • B. SELECT * FROM my_table AT (OFFSET => -60*30);
  • C. SELECT * FROM my table PRIOR TO STATEMENT '8e5d0ca9-005e-44e6-b858-a8f5b37c5726';
  • D. SELECT * FROM my table WITH TIME_TRAVEL (OFFSET => -60*30);
  • E. SELECT * FROM my_table AT (TIMESTAMP => '2021-01-01 07:00:00' :: timestamp);
  • F. SELECT * FROM my_table BEFORE (STATEMENT => '8e5d0ca9-005e-44e6-b858-a8f5b37c5726');

Answer: C,E,F

Explanation:
Explanation
According to the AT | BEFORE documentation, the AT or BEFORE clause is used for Snowflake Time Travel, which allows you to query historical data from a table based on a specific point in the past. The clause can use one of the following parameters to pinpoint the exact historical data you wish to access:
*TIMESTAMP: Specifies an exact date and time to use for Time Travel.
*OFFSET: Specifies the difference in seconds from the current time to use for Time Travel.
*STATEMENT: Specifies the query ID of a statement to use as the reference point for Time Travel.
Therefore, the queries that will allow the user to view the historical data that was in the table before the query was executed are:
*B. SELECT * FROM my_table AT (TIMESTAMP => '2021-01-01 07:00:00' :: timestamp); This query uses the TIMESTAMP parameter to specify a point in time that is before the query execution time of 07:01.
*D. SELECT * FROM my table PRIOR TO STATEMENT '8e5d0ca9-005e-44e6-b858-a8f5b37c5726'; This query uses the PRIOR TO STATEMENT keyword and the STATEMENT parameter to specify a point in time that is immediately preceding the query execution time of 07:01.
*F. SELECT * FROM my_table BEFORE (STATEMENT => '8e5d0ca9-005e-44e6-b858-a8f5b37c5726'); This query uses the BEFORE keyword and the STATEMENT parameter to specify a point in time that is immediately preceding the query execution time of 07:01.
The other queries are incorrect because:
*A. SELECT * FROM my table WITH TIME_TRAVEL (OFFSET => -60*30); This query uses the OFFSET parameter to specify a point in time that is 30 minutes before the current time, which is 07:30. This is after the query execution time of 07:01, so it will not show the historical data before the query was executed.
*C. SELECT * FROM TIME_TRAVEL ('MY_TABLE', 2021-01-01 07:00:00); This query is not valid syntax for Time Travel. The TIME_TRAVEL function does not exist in Snowflake. The correct syntax is to use the AT or BEFORE clause after the table name in the FROM clause.
*E. SELECT * FROM my_table AT (OFFSET => -60*30); This query uses the AT keyword and the OFFSET parameter to specify a point in time that is 30 minutes before the current time, which is 07:30. This is equal to the query execution time of 07:01, so it will not show the historical data before the query was executed. The AT keyword specifies that the request is inclusive of any changes made by a statement or transaction with timestamp equal to the specified parameter. To exclude the changes made by the query, the BEFORE keyword should be used instead.


NEW QUESTION # 51
......

Dumps for Free ADA-C01 Practice Exam Questions: https://dumpstorrent.prep4surereview.com/ADA-C01-latest-braindumps.html