CREATE TABLE IF NOT EXISTS material_consumption_snapshots ( timestamp timestamptz NOT NULL, calculation_id text NOT NULL, machine_id text NOT NULL, production_order text NOT NULL, run_id text NOT NULL, consumption_kg double precision NOT NULL, PRIMARY KEY (calculation_id, machine_id, production_order, timestamp) ); -- Machine time series across orders; the primary key covers a specific order. CREATE INDEX IF NOT EXISTS material_consumption_snapshots_machine_time_idx ON material_consumption_snapshots (calculation_id, machine_id, timestamp);