I will have a some very large alarm journal tables in PosgreSQL (alarm_events and alarm_event_data with some associated data)
I plan to use postgres db (version 15) partitioning feature.
Does anybody has some feedback on alarms journal tables database partitionning ?
Perhaps something like that could do the job ?
alarm_events : PARTITION BY RANGE (eventtime)
alarm_event_data : PARTITION BY HASH (id)
CREATE TABLE alarm_events_xxx_x PARTITION OF alarm_events
FOR VALUES FROM (...) TO (...);
...
CREATE TABLE alarm_event_data _0 PARTITION OF alarm_event_data FOR VALUES WITH (MODULUS 10,REMAINDER 0)
CREATE TABLE alarm_event_data _0 PARTITION OF alarm_event_data FOR VALUES WITH (MODULUS 10,REMAINDER 1)
...
I don't known what's the best way to partition alarm_event_data table in order to keep good query response time.