-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinit.sql
277 lines (238 loc) · 5.96 KB
/
init.sql
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
-- DB for our data (timescaleDB)
-- CREATE DATABASE tsdb;
-- Make sure correct schema is in use, in tsdb database
CREATE SCHEMA IF NOT EXISTS data;
SET SEARCH_PATH = data;
-- ENTSOE tables
CREATE TABLE total_load_actual (
timestamp TIMESTAMP PRIMARY KEY,
actual_load NUMERIC
);
CREATE TABLE total_load_day_ahead (
timestamp TIMESTAMP PRIMARY KEY,
total_load NUMERIC
);
CREATE TABLE total_load_week_ahead (
timestamp TIMESTAMP PRIMARY KEY,
min_total_load NUMERIC,
max_total_load NUMERIC
);
CREATE TABLE total_load_month_ahead (
timestamp TIMESTAMP PRIMARY KEY,
min_total_load NUMERIC,
max_total_load NUMERIC
);
CREATE TABLE total_load_year_ahead (
timestamp TIMESTAMP PRIMARY KEY,
min_total_load NUMERIC,
max_total_load NUMERIC
);
CREATE TABLE generation_forecast_day_ahead (
timestamp TIMESTAMP PRIMARY KEY,
scheduled_generation NUMERIC
);
CREATE TABLE generation_forecast_windsolar (
timestamp TIMESTAMP PRIMARY KEY,
solar_dayahead NUMERIC,
solar_intraday NUMERIC,
wind_dayahead NUMERIC,
wind_intraday NUMERIC
);
CREATE TABLE actual_generation_per_type (
timestamp TIMESTAMP PRIMARY KEY,
fossil_brown_coal_lignite NUMERIC,
fossil_gas NUMERIC,
fossil_oil NUMERIC,
hydro_pumped_storage NUMERIC,
hydro_water_reservoir NUMERIC,
solar NUMERIC,
wind_onshore NUMERIC
);
CREATE TABLE day_ahead_prices (
timestamp TIMESTAMP PRIMARY KEY,
price NUMERIC
);
CREATE TABLE crossborder_flows (
timestamp TIMESTAMP PRIMARY KEY,
gr_al NUMERIC,
al_gr NUMERIC,
gr_bg NUMERIC,
bg_gr NUMERIC,
gr_it NUMERIC,
it_gr NUMERIC,
gr_mk NUMERIC,
mk_gr NUMERIC,
gr_tr NUMERIC,
tr_gr NUMERIC
);
CREATE TABLE hydro_reservoir_storage (
timestamp TIMESTAMP PRIMARY KEY,
stored_energy NUMERIC
);
CREATE TABLE actual_generation_per_generation_unit (
timestamp TIMESTAMP,
point_id TEXT,
value NUMERIC,
PRIMARY KEY (timestamp, point_id)
);
-- IPTO tables
CREATE TABLE ipto_1day_ahead_load_forecast (
timestamp TIMESTAMP PRIMARY KEY,
load_forecast NUMERIC
);
CREATE TABLE ipto_2day_ahead_load_forecast (
timestamp TIMESTAMP PRIMARY KEY,
load_forecast NUMERIC
);
CREATE TABLE ipto_3intraday_load_forecast (
timestamp TIMESTAMP PRIMARY KEY,
load_forecast NUMERIC
);
CREATE TABLE ipto_1day_ahead_res_forecast (
timestamp TIMESTAMP PRIMARY KEY,
res_forecast NUMERIC
);
CREATE TABLE ipto_2day_ahead_res_forecast (
timestamp TIMESTAMP PRIMARY KEY,
res_forecast NUMERIC
);
CREATE TABLE ipto_3intraday_res_forecast (
timestamp TIMESTAMP PRIMARY KEY,
res_forecast NUMERIC
);
CREATE TABLE ipto_week_ahead_load_forecast (
timestamp TIMESTAMP,
target_timestamp TIMESTAMP,
load_forecast NUMERIC,
PRIMARY KEY (timestamp, target_timestamp)
);
CREATE TABLE ipto_net_interconnection_flows (
timestamp TIMESTAMP PRIMARY KEY,
albania NUMERIC,
fyrom NUMERIC,
bulgaria NUMERIC,
turkey NUMERIC,
italy NUMERIC
);
CREATE TABLE ipto_res_injections (
timestamp TIMESTAMP PRIMARY KEY,
res_injections NUMERIC
);
CREATE TABLE ipto_unit_production_and_system_facts (
timestamp TIMESTAMP PRIMARY KEY,
point_id TEXT,
value NUMERIC
);
CREATE TABLE ipto_daily_energy_balance (
timestamp TIMESTAMP PRIMARY KEY,
lignite NUMERIC,
natural_gas NUMERIC,
hydroelectric NUMERIC,
renewables NUMERIC,
net_imports NUMERIC
);
-- ENTSO-G tables
CREATE TABLE entsog_flows_daily (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE entsog_nominations_daily (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE entsog_allocations_daily (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE entsog_renominations_daily (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
-- DESFA tables
CREATE TABLE desfa_flows_daily (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE desfa_flows_hourly_archive (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE desfa_flows_6h (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE desfa_ng_quality_yearly (
timestamp TIMESTAMP,
point_id TEXT,
c1 NUMERIC,
c2 NUMERIC,
c3 NUMERIC,
i_c4 NUMERIC,
n_c4 NUMERIC,
i_c5 NUMERIC,
n_c5 NUMERIC,
neo_c5 NUMERIC,
c6_plus NUMERIC,
n2 NUMERIC,
co2 NUMERIC,
gross_heating_value NUMERIC,
wobbe_index NUMERIC,
water_dew_point NUMERIC,
hydrocarbon_dew_point_max NUMERIC,
PRIMARY KEY (timestamp, point_id)
);
CREATE TABLE desfa_ng_pressure_monthly (
timestamp TIMESTAMP,
point_id TEXT,
min_delivery_pressure NUMERIC,
max_delivery_pressure NUMERIC,
PRIMARY KEY (timestamp, point_id)
);
CREATE TABLE desfa_ng_gcv_daily (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE desfa_nominations_daily (
timestamp TIMESTAMP,
value NUMERIC,
point_id TEXT,
point_type TEXT,
PRIMARY KEY (timestamp, point_id, point_type)
);
CREATE TABLE desfa_estimated_vs_actual_offtakes (
timestamp TIMESTAMP PRIMARY KEY,
estimated NUMERIC,
actual NUMERIC
);
-- for postgrest, taken from https://postgrest.org/en/stable/tutorials/tut0.html#step-4-create-database-for-api
CREATE ROLE web_anon NOLOGIN;
GRANT USAGE ON SCHEMA data TO web_anon;
GRANT SELECT ON ALL TABLES IN SCHEMA data TO web_anon;
CREATE ROLE authenticator NOINHERIT LOGIN PASSWORD 'postgres';
GRANT web_anon TO authenticator;
-- DB for dagster's records
CREATE DATABASE dagster_storage;