Olá pessoal, tudo bem?
Vamos ver se vocês conseguem ajudar....
Possuo em minha DB a seguinte tabela:
CREATE TABLE gorfs.inode_segments
(
st_ino "gorfs"."ino_t" NOT NULL, -- Inode number the segment belongs to.
> alongside segment_index, it forms the table's primary key to ensure
> uniqueness per relevant scope
segment_index "gorfs"."pathname_component" NOT NULL, -- See st_no's
> column description for further details. The meaning of this column varies
> based on the host inode type:...
st_ino_target "gorfs"."ino_t", -- Target inode number. Meaningful for
> directory inode segments (objects in the directory)
full_path "gorfs"."absolute_pathname", -- Exploded absolute canonical
> path for quick lookups. Meaningful only for directory inode segments
> (objects in the directory)
*segment_data "bytea", -- Actual data segment. Meaningful only for
> S_IFLNK and S_IFREG....*
CONSTRAINT pk_inode_segments PRIMARY KEY ("st_ino", "segment_index"),
CONSTRAINT fk_host_inode_must_exist FOREIGN KEY (st_ino)
REFERENCES gorfs.inodes (st_ino) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT fk_target_inode_must_exist FOREIGN KEY (st_ino_target)
REFERENCES gorfs.inodes (st_ino) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT uc_no_duplicate_full_paths UNIQUE ("full_path"),
CONSTRAINT cc_only_root_can_be_its_own_parent CHECK ("st_ino_target" IS
> NULL OR "st_ino"::bigint <> "st_ino_target"::bigint OR "st_ino"::bigint = 2)
)
Podem notar na coluna *"segment_data"* - Esta coluna armazena todos os
arquivos dos usuários, tais como: imagens, pdfs, docs, etc
Esta coluna será migrada para um servidor NFS, sendo assim, todos os blobs
serão removidos da DB.
Basicamente a migracão consiste em setar NULL a row, uma vez que os dados
foram migrados com sucesso.
UPDATE gorfs.inode_segments SET segment_data = NULL WHERE batch_number = 0
O tamanho total de minha DB é: 2 TB
O tamanho total da tabela gorfs.inode_segments é: 1698 GB (Comando: SELECT
pg_size_pretty( pg_total_relation_size('gorfs.inode_segments'));)
*Pergunta:*
Quando a coluna for setada como NULL (não será de uma vez só... será
gradativamente), eu vou ter espaco liberado na hora? Ou é preciso fazer
alguma outra coisa?
Vou ter que fazer um DUMP da DB (uma vez que toda coluna segment_data
estiver como NULL) ?
Obrigado!
Lucas
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral