ARA-C01 Question 66
Single answerData lineage and dependenciesA financial services company is preparing to retire a legacy table, FINANCE.RAW.TRANSACTIONS_RAW, after moving all reporting to curated models. Before dropping the table, the Snowflake architect must identify which downstream objects still depend on it, including objects referenced through views, dynamic tables, and materialized views. The architect also needs an approach that can be used repeatedly during future change-impact reviews. Which solution best meets these requirements?
- A
Query the ACCOUNT_USAGE.OBJECT_DEPENDENCIES view to identify dependent objects and use the results as the primary source for repeatable impact analysis.
- B
Use SHOW TABLES LIKE 'TRANSACTIONS_RAW' and then inspect LAST_ALTERED timestamps on related schemas to infer downstream dependencies.
- C
Query ACCESS_HISTORY to identify all users who queried TRANSACTIONS_RAW recently, because those users represent the complete set of downstream object dependencies.
- D
Run DESCRIBE TABLE FINANCE.RAW.TRANSACTIONS_RAW and review the table metadata, because Snowflake stores a built-in list of all downstream dependent objects in the table definition.
Show answer and explanation
Correct answer: A
Explanation
For Snowflake change-impact analysis, the architect should use metadata sources built for lineage and dependency tracking rather than trying to infer dependencies from object timestamps or user activity. ACCOUNT_USAGE.OBJECT_DEPENDENCIES is the best fit in this scenario because it supports identification of object-to-object relationships and can be queried repeatedly as part of governance and release processes. By contrast, SHOW commands and DESCRIBE output are object inspection tools, not lineage frameworks, and ACCESS_HISTORY focuses on who accessed data rather than which database objects depend on other objects. In practice, architects commonly combine dependency metadata with validation of object types and ownership before decommissioning data assets. This aligns with Snowflake best practices for metadata-driven governance and impact assessment using Account Usage views.
- A. Correct.
Correct. ACCOUNT_USAGE.OBJECT_DEPENDENCIES is designed to expose dependency relationships between Snowflake objects and is the most appropriate system view for repeatable lineage and impact analysis. It helps identify downstream objects such as views and other dependent database objects. For an architect performing change-impact analysis before dropping or modifying an object, this is the most reliable built-in metadata source among the options presented.
- B. Incorrect.
Incorrect. SHOW TABLES and LAST_ALTERED metadata can help locate objects and understand recency of changes, but they do not provide authoritative lineage or dependency mapping. Inferring dependencies from timestamps is unreliable and may miss indirect relationships entirely.
- C. Incorrect.
Incorrect. ACCESS_HISTORY is useful for understanding query activity, data access patterns, and operational usage, but user query history is not the same as object dependency lineage. A table can have dependent views or other objects even if recent users have not queried them directly, and user access does not provide a complete dependency graph.
- D. Incorrect.
Incorrect. DESCRIBE TABLE returns structural metadata about the table itself, such as columns and properties, but it does not provide a comprehensive built-in list of downstream dependent objects. Relying on DESCRIBE TABLE for lineage analysis reflects a common misconception between object definition metadata and dependency metadata.