반응형
[SNOWFLAKE/스노우플레이크 공부] Pro 자격증 준비에 필요한 토막 지식 정리_Account Usage와 Information Schema
Snowflake에서 Account Usage와 Information Schema는 데이터를 관리하고, 사용량 및 시스템 메타데이터에 접근할 수 있는 두 가지 주요 데이터베이스 및 뷰입니다. 이들은 Snowflake 사용 중 모니터링과 관리에 필요한 정보를 제공합니다. 각각의 역할을 쉽게 이해할 수 있도록 설명해볼게요.
1. Account Usage
- Account Usage는 Snowflake 계정의 사용 현황과 활동 정보를 추적하기 위한 데이터를 제공해요.
- Snowflake는 모든 계정에 SNOWFLAKE.ACCOUNT_USAGE라는 데이터베이스를 제공하며, 여기에는 다양한 **뷰(Views)**가 포함되어 있어요. 이러한 뷰를 통해 쿼리 실행 기록, 사용량 통계, 작업 내역 등을 확인할 수 있어요.
- 활용 예시:
- 쿼리 히스토리: 어떤 사용자가 언제, 어떤 쿼리를 실행했는지, 얼마나 많은 리소스를 사용했는지를 조회할 수 있어요.
- 테이블 저장소 사용량: 테이블이 얼마나 많은 데이터를 저장하고 있는지, 압축 후 사이즈는 얼마나 되는지 등을 알 수 있어요.
- 계정 활동 모니터링: 데이터베이스, 테이블, 스키마 등의 생성, 변경 내역도 볼 수 있어서, 계정의 보안 및 관리에 도움이 돼요.
- 비유로 이해하기: Account Usage는 마치 회사 운영일지나 회계장부처럼, 계정의 모든 활동 내역을 기록해 두는 기록부와 같아요. 이를 통해 리소스 사용 패턴을 분석하고 비용 절감 방안을 찾는 데 도움이 돼요.
2. Information Schema
- Information Schema는 Snowflake 내의 구조화된 데이터 메타데이터를 제공하는 데이터베이스에요. 스키마, 테이블, 뷰, 함수, 권한 등과 관련된 정보를 조회할 수 있어요.
- 모든 데이터베이스에는 그에 해당하는 INFORMATION_SCHEMA가 존재하며, 여기서 해당 데이터베이스의 메타데이터를 조회할 수 있어요.
- 활용 예시:
- 테이블 목록 조회: 데이터베이스 내의 모든 테이블과 뷰를 나열하거나 각 테이블의 컬럼 정보를 조회할 수 있어요.
- 사용자 및 역할 권한 조회: 어떤 사용자에게 어떤 권한이 있는지, 특정 테이블이나 스키마에 대한 접근 권한이 어떻게 설정되어 있는지를 조회할 수 있어요.
- 저장 프로시저, 함수 정보: 사용자 정의 함수(UDF)나 저장 프로시저의 목록과 정의를 볼 수 있어요.
- 비유로 이해하기: Information Schema는 도서관의 카탈로그나 책의 목차처럼, 데이터베이스와 그 내부 구성요소에 대한 구조적 정보를 제공해요. 이를 통해 데이터베이스 내부 구조를 파악하고, 원하는 데이터를 빠르게 찾을 수 있어요.
3. Account Usage와 Information Schema의 차이점
- Account Usage:
- Snowflake 계정 전체의 사용량 및 활동에 대한 정보를 제공해요.
- 사용량 통계, 쿼리 내역, 리소스 사용량 등을 중심으로 계정 활동을 추적하는 데 초점이 있어요.
- Snowflake가 제공하는 공용 데이터베이스(SNOWFLAKE.ACCOUNT_USAGE)로, 계정의 전반적인 사용 현황을 파악할 때 사용해요.
- Information Schema:
- 데이터베이스의 구조적 메타데이터를 조회하는 데 사용해요.
- 특정 데이터베이스의 스키마, 테이블, 컬럼, 권한 등의 정보를 얻을 수 있어요.
- 각 데이터베이스마다 고유한 INFORMATION_SCHEMA가 있어, 해당 데이터베이스의 내부 구성 요소에 대한 세부 정보를 파악할 수 있어요.
4. 사용 예시 정리:
- Account Usage를 사용하면, Snowflake 계정 내에서 어떤 쿼리가 많이 사용되고 있는지, 스테이지와 웨어하우스의 사용량은 어떻게 되는지, 쿼리 성능이 어떤지를 모니터링할 수 있어요.
- Information Schema는 데이터베이스 내의 테이블 구조를 확인하거나 어떤 컬럼이 포함되어 있는지, 또는 특정 권한 설정이 어떻게 되어 있는지를 알아볼 때 유용해요.
5. 비유로 쉽게 이해하기:
- Account Usage는 회사의 운영 일지와 같아요. 어떤 직원이 언제 출근했고, 어떤 프로젝트를 수행했으며, 자원(예산, 시간)을 얼마나 썼는지 기록해 두는 운영 보고서인 거죠.
- Information Schema는 도서관에서 책의 목차나 분류 목록처럼, 데이터베이스의 구조와 구성요소를 찾는 데 쓰이는 참고 자료와 같아요.
이 두 가지는 Snowflake 사용 중 계정 관리와 데이터베이스 내부 탐색에 중요한 역할을 하며, 이를 통해 더 효율적인 운영 관리와 데이터 이해가 가능해집니다!
[SNOWFLAKE/스노우플레이크 공부] Pro 자격증 준비에 필요한 토막 지식 정리_Account Usage와 Information Schema
반응형