1. Why data sampling?
- 쿼리 개발, 데이터 분석 등에 사용
- 빠르고 비용 효율적임 (컴퓨팅 리소스 절감)
2. Methods of data sampling
- ROW or BERNOULLI method
- 모든 행은 p 퍼센트로 선택됨
- 임의적
- 작은 테이블에 적합
- BLOCK or SYSTEM method
- 모든 블럭은 p 퍼센트로 선택
- 효율적
- 큰 테이블에 적합
3. Sampling data: Hands-on
- 데이터베이스 생성
CREATE OR REPLACE TRANSIENT DATABASE SAMPLING_DB;
- SAMPLE ROW를 통해 데이터를 샘플링해서 뷰 생성
CREATE OR REPLACE VIEW ADDRESS_SAMPLE
AS
SELECT * FROM SNOWFLAKE_SAMPLE_DATA.TPCDS_SF10TCL.CUSTOMER_ADDRESS
SAMPLE ROW (1) SEED(27);
- 테이블 확인
SELECT * FROM ADDRESS_SAMPLE;
- 총 행수로 나눈 백분율 확인
SELECT CA_LOCATION_TYPE, COUNT(*)/3254250*100
FROM ADDRESS_SAMPLE
GROUP BY CA_LOCATION_TYPE;
- SAMPLE SYSTEM을 통해 마이크로 파티션에서 샘플링해서 결과 확인
SELECT * FROM SNOWFLAKE_SAMPLE_DATA.TPCDS_SF10TCL.CUSTOMER_ADDRESS
SAMPLE SYSTEM (1) SEED(23);
SELECT * FROM SNOWFLAKE_SAMPLE_DATA.TPCDS_SF10TCL.CUSTOMER_ADDRESS
SAMPLE SYSTEM (10) SEED(23);
Udemy의 'Snowflake - The Complete Masterclass (2023 Edition)'를 공부한 내용을 바탕으로 작성하였습니다.
'Snowflake > Snowflake - The Complete Masterclass' 카테고리의 다른 글
[Snowflake] Streams (0) | 2023.02.20 |
---|---|
[Snowflake] Scheduling Tasks (0) | 2023.02.14 |
[Snowflake] Data sharing (0) | 2023.02.13 |
[Snowflake] Zero-Copy Cloning (0) | 2023.02.09 |
[Snowflake] Types of tables (0) | 2023.02.09 |