-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmacro-indicators-schema.sql
More file actions
24 lines (20 loc) · 1.25 KB
/
Copy pathmacro-indicators-schema.sql
File metadata and controls
24 lines (20 loc) · 1.25 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
-- macro-indicators-schema.sql
-- BHN — FRED (Federal Reserve Economic Data) series observations.
CREATE TABLE IF NOT EXISTS macro_indicators (
id BIGSERIAL PRIMARY KEY,
measured_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
series_id TEXT NOT NULL, -- e.g. 'DGS10' (10Y treasury), 'CPIAUCSL' (CPI), 'UNRATE'
series_title TEXT,
value NUMERIC(20,6),
units TEXT, -- 'Percent', 'Index 1982=100', 'Thousands of Persons'
period_start TIMESTAMPTZ NOT NULL, -- observation date
frequency TEXT, -- 'Daily', 'Weekly', 'Monthly', 'Quarterly', 'Annual'
raw_payload JSONB,
UNIQUE (series_id, period_start)
);
CREATE INDEX IF NOT EXISTS mi_series_time_idx ON macro_indicators (series_id, period_start DESC);
CREATE INDEX IF NOT EXISTS mi_period_idx ON macro_indicators (period_start DESC);
GRANT INSERT ON macro_indicators TO log_shipper;
GRANT USAGE, SELECT ON SEQUENCE macro_indicators_id_seq TO log_shipper;
GRANT SELECT ON macro_indicators TO agent_reader, grafana_reader, ehuser;
COMMENT ON TABLE macro_indicators IS 'FRED series observations. Polled daily by bhn-fred-poller.py. UNIQUE(series_id, period_start) for ON CONFLICT DO NOTHING.';