-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
CREATE TABLE banking_stage_results_2.accounts_map_transaction_latest_parted(
acc_id BIGINT PRIMARY KEY,
tx_ids BIGINT[]
) PARTITION BY HASH (acc_id);
DO $$
DECLARE part_no integer;
DECLARE num_parts integer := 4;
BEGIN
for part_no in 0..num_parts-1 loop
EXECUTE format(
'
CREATE TABLE banking_stage_results_2.accounts_map_transaction_latest_part%s
PARTITION OF banking_stage_results_2.accounts_map_transaction_latest_parted
FOR VALUES WITH (MODULUS %s, REMAINDER %s)
WITH (FILLFACTOR=80)
', part_no, num_parts, part_no);
end loop;
END; $$
INSERT INTO banking_stage_results_2.accounts_map_transaction_latest_parted
SELECT * FROM banking_stage_results_2.accounts_map_transaction_latest;
SELECT count(*) FROM banking_stage_results_2.accounts_map_transaction_latest;
ALTER TABLE banking_stage_results_2.accounts_map_transaction_latest RENAME TO accounts_map_transaction_latest_unparted_old;
ALTER TABLE banking_stage_results_2.accounts_map_transaction_latest_parted RENAME TO accounts_map_transaction_latest;
SELECT count(*) FROM banking_stage_results_2.accounts_map_transaction_latest;
DROP TABLE banking_stage_results_2.accounts_map_transaction_latest_unparted_old;
Metadata
Metadata
Assignees
Labels
No labels