ADA-C01 Question 385
Single answerDifferentiate use cases for the ACCOUNT_USAGE and ORGANIZATION_USAGE viewsA global company uses Snowflake Organizations to manage five separate accounts for development, testing, and production across multiple regions. The central platform team has been asked to build a monthly governance report that compares warehouse credit consumption and storage usage across all accounts in the organization. At the same time, each individual account's administrators still need detailed, account-specific auditing for objects and query activity within their own account. Which approach best meets these requirements?
- A
Use ORGANIZATION_USAGE views for the cross-account governance report, and use ACCOUNT_USAGE views within each account for detailed account-level auditing.
- B
Use ACCOUNT_USAGE views in one designated production account for both the cross-account governance report and all detailed auditing, because ACCOUNT_USAGE automatically aggregates all organization accounts.
- C
Use ORGANIZATION_USAGE views for both cross-account reporting and all detailed object/query auditing inside each account, because ORGANIZATION_USAGE is the superset replacement for ACCOUNT_USAGE.
- D
Use INFORMATION_SCHEMA views in each account for the cross-account governance report, because INFORMATION_SCHEMA is designed for organization-wide reporting when queried centrally.
Show answer and explanation
Correct answer: A
Explanation
The key distinction is scope and intended use. ACCOUNT_USAGE exposes account-level historical metadata and usage views for a single Snowflake account, making it appropriate for detailed auditing and operational reporting by an account administrator. ORGANIZATION_USAGE is designed for organization-level reporting across multiple Snowflake accounts that belong to the same Snowflake Organization, which makes it the correct choice for centralized governance, chargeback, and cross-account consumption analysis. In practice, a platform team commonly uses ORGANIZATION_USAGE for enterprise reporting, while individual account admins continue using ACCOUNT_USAGE for deep account-specific investigation. This aligns with Snowflake documentation on the SNOWFLAKE shared database, where ACCOUNT_USAGE and ORGANIZATION_USAGE serve different administrative reporting scopes.
- A. Correct.
Correct. ORGANIZATION_USAGE is intended for organization-level visibility and is the right choice when reporting across multiple Snowflake accounts in the same organization, such as comparing usage, costs, or storage across accounts. ACCOUNT_USAGE is scoped to a single account and is commonly used for detailed administrative, governance, and auditing analysis within that account, including account-specific history and metadata. This combination matches the stated requirement for both centralized cross-account reporting and local detailed auditing.
- B. Incorrect.
Incorrect. ACCOUNT_USAGE does not automatically aggregate data from all accounts in the organization. It is limited to the account in which it is queried. A common misconception is that selecting one 'main' account enables enterprise-wide reporting from ACCOUNT_USAGE, but organization-wide reporting requires ORGANIZATION_USAGE.
- C. Incorrect.
Incorrect. ORGANIZATION_USAGE is not simply a universal superset of ACCOUNT_USAGE for every administrative use case. It is designed for organization-level reporting and includes a defined set of organization-scoped views, but account administrators still rely on ACCOUNT_USAGE for many detailed account-level metadata and activity analyses. Assuming ORGANIZATION_USAGE replaces all ACCOUNT_USAGE use cases is a common error.
- D. Incorrect.
Incorrect. INFORMATION_SCHEMA is primarily for metadata discovery within databases and schemas and is not the standard source for centralized organization-wide consumption reporting. It also does not provide the intended organization-level aggregation across all accounts. For cross-account governance reporting in a Snowflake Organization, ORGANIZATION_USAGE is the appropriate source.