읽기/쓰기에 영향을 주지 않고 PostgreSQL 테이블 팽창을 해결하시겠습니까?

읽기/쓰기에 영향을 주지 않고 PostgreSQL 테이블 팽창을 해결하시겠습니까?

제 생각에는 비대해지기 시작한 대형 postgresql 테이블이 있는데 이를 수정하고 싶습니다. 일반적으로 VACUUM FULL또는 을 수행할 수 있지만 CLUSTER읽기/쓰기 성능에 영향을 주지 않고 팽창을 해결할 수 있는지 궁금합니다.

인덱스 팽창이 있는 경우 이전 인덱스와 동일한 항목을 인덱스하지만 이름은 다른 새 인덱스를 (수동으로) 동시에 생성할 수 있으며, 생성 시 이전의 비대해진 인덱스를 삭제할 수 있습니다. 이를 통해 프로덕션 사용에 최소한의 영향을 미치면서 인덱스 팽창을 수정할 수 있습니다(항상 인덱스가 있고 읽기 및 쓰기가 차단되지 않기 때문입니다).

테이블에 적용할 수 있는 접근 방식이 있나요? CREATE TABLE newtable LIKE old_bloated_table INCLUDING ...테이블을 새로 만들 수 있습니다 . 그런 다음 삭제하고 이름을 바꿉니다. 하지만 데이터가 동기화되지 않았을 수 있습니다. 어쨌든 테이블 간에 데이터가 동일하다는 것을 보장할 수 있습니까? (인덱스의 경우 인덱스는 항상 테이블과 동기화됩니다.)

관련 정보