-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathload_raw_data.sql
More file actions
60 lines (54 loc) · 1.65 KB
/
load_raw_data.sql
File metadata and controls
60 lines (54 loc) · 1.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
-- 0. 데이터베이스 설정
USE DATABASE dev;
/*
1. raw_data 스키마 하위 테이블 생성
*/
CREATE OR REPLACE TABLE raw_data.weather_daily (
"date" DATE PRIMARY KEY,
country VARCHAR(32),
weather_code FLOAT,
temperature_2m_max FLOAT,
temperature_2m_min FLOAT,
precipitation_sum FLOAT,
wind_speed_10m_max FLOAT,
wmo VARCHAR(32)
);
CREATE OR REPLACE TABLE raw_data.track (
track_id VARCHAR(128) PRIMARY KEY,
duration_ms INTEGER,
tempo FLOAT,
danceability FLOAT,
energy FLOAT,
valence FLOAT
);
CREATE OR REPLACE TABLE raw_data.music_daily (
rank INTEGER,
track_id VARCHAR(32) PRIMARY KEY,
artist_names VARCHAR(256),
track_name VARCHAR(128),
source VARCHAR(128),
peak_rank INTEGER,
previous_rank INTEGER,
days_on_chart INTEGER,
"streams" INTEGER,
country VARCHAR(32),
"date" DATE
);
/*
2. raw_data 스키마 하위 테이블에 데이터 주입(S3 Copy)
*/
COPY INTO raw_data.weather_daily
FROM 's3://<AWS_S3_BUCKET>/weather/daily/'
CREDENTIALS = (AWS_KEY_ID = '<AWS_KEY_ID>' AWS_SECRET_KEY = '<AWS_SECRET_KEY>')
FILE_FORMAT = (TYPE = 'CSV' SKIP_HEADER = 1 FIELD_OPTIONALLY_ENCLOSED_BY = '"');
COPY INTO raw_data.track
FROM 's3://<AWS_S3_BUCKET>/music/track_data/'
CREDENTIALS = (
AWS_KEY_ID = '<AWS_KEY_ID>'
AWS_SECRET_KEY = '<AWS_SECRET_KEY>'
)
FILE_FORMAT = (TYPE = 'CSV' SKIP_HEADER = 1 FIELD_OPTIONALLY_ENCLOSED_BY = '"');
COPY INTO raw_data.music_daily
FROM 's3://<AWS_S3_BUCKET>/music/daily/'
CREDENTIALS = (AWS_KEY_ID = '<AWS_KEY_ID>' AWS_SECRET_KEY = '<AWS_SECRET_KEY>')
FILE_FORMAT = (TYPE = 'CSV' SKIP_HEADER = 1 FIELD_OPTIONALLY_ENCLOSED_BY = '"');