PostgreSQL의 TOAST 컬럼이란 무엇입니까?
테이블의 TOAST 컬럼 식별하기
TOAST 컬럼이 올바르게 처리되도록 하기
REPLICA IDENTITY를 FULL로 설정해야 합니다. 이렇게 하면 PostgreSQL이 UPDATE 및 DELETE 작업 시 WAL에 이전 행 전체를 포함하므로, 모든 컬럼 값(TOAST 컬럼 포함)을 복제에 사용할 수 있습니다.
다음 SQL 명령으로 REPLICA IDENTITY를 FULL로 설정할 수 있습니다:
REPLICA IDENTITY FULL 설정 시 성능 고려 사항은 이 블로그 게시물을 참조하십시오.
REPLICA IDENTITY FULL이 설정되지 않은 경우의 복제 동작
REPLICA IDENTITY FULL이 설정되어 있지 않으면, ClickHouse로 복제할 때 다음과 같은 문제가 발생할 수 있습니다.
- INSERT 작업에서는 모든 컬럼(TOAST 컬럼 포함)이 올바르게 복제됩니다.
-
UPDATE 작업에서는:
- TOAST 컬럼이 수정되지 않으면 해당 값이 ClickHouse에서 NULL 또는 빈 값으로 표시됩니다.
- TOAST 컬럼이 수정되면 올바르게 복제됩니다.
- DELETE 작업에서는 TOAST 컬럼 값이 ClickHouse에서 NULL 또는 빈 값으로 표시됩니다.
REPLICA IDENTITY FULL을 설정하는 것이 중요합니다.
결론
REPLICA IDENTITY를 설정하면 데이터가 정확하고 완전하게 복제되도록 보장할 수 있습니다.