> For the complete documentation index, see [llms.txt](https://docs.tibero.com/prosync/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tibero.com/prosync/administration/extract/key-features/compressed-table-extraction.md).

# 압축 테이블 추출

Source DB가 Tibero인 경우 압축 테이블에 대한 동기화 지원을 설명한다.

Source DB가 Tibero인 경우, 압축된 테이블에 대한 동기화를 지원한다.\
압축 테이블의 변경 데이터는 Redo Log에 압축 심볼 참조 형태로 기록되며, Extract 프로세스는 Supplemental Log에 포함된 심볼 매핑 정보를 이용하여 이를 원본 값으로 복원한 후 동기화한다.

압축 테이블 동기화를 위한 별도의 파라미터 설정은 필요하지 않으며, 다음 조건을 만족하면 자동으로 동작한다.

* 동기화 대상 테이블에 Supplemental Logging이 설정되어 있어야 한다.
* Source DB(Tibero)와 ProSync 모두 압축 테이블 동기화를 지원하는 버전이어야 한다.

```sql
SQL> CREATE TABLE TEST.T_COMP (C1 VARCHAR(2000), C2 NUMBER) COMPRESS FOR OLTP;
SQL> ALTER TABLE TEST.T_COMP ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
```

## 지원 범위

<table><thead><tr><th width="280">압축 방식</th><th>지원 여부</th></tr></thead><tbody><tr><td>COMPRESS<br>(Basic Compression)</td><td>지원<br><br>Direct Path Insert(<code>/*+ APPEND */</code> 힌트, <code>CREATE TABLE AS SELECT</code> 등)로 적재된 압축 데이터의 추출을 지원한다.</td></tr><tr><td>COMPRESS FOR OLTP<br>(OLTP Compression)</td><td>지원<br><br>INSERT, UPDATE, DELETE 및 Multi Insert, Multi Delete를 포함한 DML 추출을 지원한다.</td></tr><tr><td>COMPRESS FOR QUERY,<br>COMPRESS FOR ARCHIVE</td><td>미지원<br><br>컬럼 단위 압축(Tibero Columnar Compression)이 적용된 테이블은 동기화 대상에 포함할 수 없다.</td></tr></tbody></table>

{% hint style="warning" %}
압축 테이블 동기화를 지원하지 않는 버전의 Source DB와 함께 사용하는 경우, 압축 데이터의 원본 값 복원에 필요한 Supplemental Log 정보가 기록되지 않아 데이터 정합성이 깨질 수 있다.

Extract 프로세스 로그에 `comp supp lookup miss` 또는 `decompress failed` 메시지가 나타나면 해당 테이블의 Source DB와 Target DB 간 데이터 정합성 확인이 필요하다.
{% endhint %}
