Skip to content

partiton accounts_map_transaction_latest table #45

@grooviegermanikus

Description

@grooviegermanikus

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

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions