This is an automated email from the ASF dual-hosted git repository.

morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 0f23dd2f8e9e docs(i18n): machine Korean translation candidates (#4492)
0f23dd2f8e9e is described below

commit 0f23dd2f8e9e322baf7048ecfe6f2b5450cf461c
Author: Mingyu Chen (Rayner) <[email protected]>
AuthorDate: Sat Oct 24 10:50:35 2026 +0100

    docs(i18n): machine Korean translation candidates (#4492)
    
    ## Korean translation candidate
    
    Source commit: `795aeb76a468b06fb12fd8f218fa33c31d76b63c`
    Model: `gpt-6-sol`; glossary: `1`
    Review status: machine. Korean proofreading and the normal PR checks are
    still required.
    
    | Action | Version | English source | SHA-256 prefix | Generation |
    | --- | --- | --- | --- | --- |
    | update | current |
    
[`docs/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/docs/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md)
    | `5338a79c446d` | incremental (0.5%) |
    | update | 4.x |
    
[`versioned_docs/version-4.x/connection-integration/data-integration/intro.mdx`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/versioned_docs/version-4.x/connection-integration/data-integration/intro.mdx)
    | `ba91960ab0c4` | incremental (2.7%) |
    | update | 4.x |
    
[`versioned_docs/version-4.x/key-features/data-update-delete.mdx`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/versioned_docs/version-4.x/key-features/data-update-delete.mdx)
    | `c0876cbe06f4` | incremental (1.0%) |
    | update | 4.x |
    
[`versioned_docs/version-4.x/key-features/kafka-cdc-integration.mdx`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/versioned_docs/version-4.x/key-features/kafka-cdc-integration.mdx)
    | `c9643bb04475` | incremental (1.0%) |
    | update | 4.x |
    
[`versioned_docs/version-4.x/key-features/load-transaction.mdx`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/versioned_docs/version-4.x/key-features/load-transaction.mdx)
    | `8c21786c3e63` | incremental (1.2%) |
    | update | 4.x |
    
[`versioned_docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/versioned_docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx)
    | `051522d5a18a` | incremental (29.8%) |
    | update | 4.x |
    
[`versioned_docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/versioned_docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx)
    | `d9b0a7a5ad48` | incremental (0.3%) |
    | translate_new | current |
    
[`docs/connection-integration/data-integration/dbine.md`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/docs/connection-integration/data-integration/dbine.md)
    | `1903e0d95cf9` | full (no-previous-translation) |
    | translate_new | 4.x |
    
[`versioned_docs/version-4.x/connection-integration/data-integration/dbine.md`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/versioned_docs/version-4.x/connection-integration/data-integration/dbine.md)
    | `1903e0d95cf9` | copied from `T06-DEV-164476625823734` |
    | translate_new | current |
    
[`docs/data-operate/incremental/changelog.md`](https://github.com/apache/doris-website/blob/795aeb76a468b06fb12fd8f218fa33c31d76b63c/docs/data-operate/incremental/changelog.md)
    | `bf1fe9c08aa2` | full (no-previous-translation) |
    
    ## Failed or skipped tasks
    
    None.
    
    ## Candidates retained with warnings
    
    -
    
`versioned_docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx`:
    third attempt retained for review. protected-content: Restore protected
    source content: protected node 21: expected
    ["inlineCode",null,null,"score()"]; received
    ["inlineCode",null,null,"MATCH_ANY"] protected node 22: expected
    ["inlineCode",null,null,"MATCH_ANY"]; received
    ["inlineCode",null,null,"MATCH_ALL"] protected node 23: expected
    ["inlineCode",null,null,"MATCH_ALL"]; received
    ["inlineCode",null,null,"MATCH_PHRASE"]
    - `docs/connection-integration/data-integration/dbine.md`: third attempt
    retained for review. protected-content: Restore protected source
    content: protected node 21: expected ["inlineCode",null,null,"5.7.99"];
    received ["inlineCode",null,null,"version()"] protected node 22:
    expected ["inlineCode",null,null,"version()"]; received
    ["inlineCode",null,null,"5.7.99"]
    -
    
`versioned_docs/version-4.x/connection-integration/data-integration/dbine.md`:
    third attempt retained for review. protected-content: Restore protected
    source content: protected node 21: expected
    ["inlineCode",null,null,"5.7.99"]; received
    ["inlineCode",null,null,"version()"] protected node 22: expected
    ["inlineCode",null,null,"version()"]; received
    ["inlineCode",null,null,"5.7.99"]
    - `docs/data-operate/incremental/changelog.md`: third attempt retained
    for review. protected-content: Restore protected source content:
    protected node 15: expected
    ["inlineCode",null,null,"enable_feature_changelog = true"]; received
    ["inlineCode",null,null,"fe.conf"] protected node 16: expected
    ["inlineCode",null,null,"fe.conf"]; received
    ["inlineCode",null,null,"enable_feature_changelog = true"] protected
    node 18: expected ["inlineCode",null,null,"enable_feature_changelog =
    true"]; received ["inlineCode",null,null,"be.conf"]
    
    ## Validation
    
    Updates at or below 30% translate only changed Markdown/MDX blocks and
    preserve other target blocks.
    Change size is the sum of max(removed, added) non-empty English lines
    per diff hunk, divided by the larger old/new line count.
    New documents, larger updates, glossary changes or baselines that cannot
    be aligned use full translation.
    Generation uses at most three attempts per document. Deletions and
    code-only updates may need no model call.
    Each retry receives the earlier validation errors. Third-attempt content
    issues are retained as warnings above.
    Full attempt history and diagnostics are in generation.json and the page
    state records.
    Committed source hashes, managed paths and target/state hashes are
    checked before applying candidates.
    Master is checked before each model call and before publishing:
    unrelated merges are allowed, a page changed on master is dropped, and a
    translation configuration or tooling change discards the batch.
    The publisher runs the shared PR translation-state, syntax and
    internal-link checks before pushing.
    The normal PR build and human proofreading are still required before
    merging.
    
    <!-- korean-translation-automation:v1
    bot-head=21754e968434fd29d89e6528e3cd65c4b794be01 -->
    
    Shared PR admission checks: passed (translation state, syntax, internal
    links).
    
    Co-authored-by: morningman <[email protected]>
---
 .../data-integration/dbine.md                      |  88 ++++
 .../current/data-operate/incremental/changelog.md  | 464 +++++++++++++++++++++
 .../table-and-view/table/CREATE-TABLE.md           |   6 +-
 .../data-integration/dbine.md                      |  88 ++++
 .../data-integration/intro.mdx                     |   7 +
 .../key-features/data-update-delete.mdx            |   2 +-
 .../key-features/kafka-cdc-integration.mdx         |   2 +-
 .../version-4.x/key-features/load-transaction.mdx  |   2 +-
 .../best-practices/lance-hybrid-search.mdx         |  90 +++-
 .../lakehouse/catalogs/lance-catalog.mdx           |   6 +-
 .../data-integration/dbine.json                    |  68 +++
 .../data-integration/intro.json                    |  26 +-
 .../4.x/key-features/data-update-delete.json       |  40 +-
 .../4.x/key-features/kafka-cdc-integration.json    |  26 +-
 .../default/4.x/key-features/load-transaction.json |  40 +-
 .../best-practices/lance-hybrid-search.json        |  62 ++-
 .../4.x/lakehouse/catalogs/lance-catalog.json      |  24 +-
 .../data-integration/dbine.json                    |  68 +++
 .../data-operate/incremental/changelog.json        |  64 +++
 .../table-and-view/table/CREATE-TABLE.json         |  37 +-
 20 files changed, 1098 insertions(+), 112 deletions(-)

diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/current/connection-integration/data-integration/dbine.md
 
b/i18n/ko/docusaurus-plugin-content-docs/current/connection-integration/data-integration/dbine.md
new file mode 100644
index 000000000000..65b76b1fdaa7
--- /dev/null
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/current/connection-integration/data-integration/dbine.md
@@ -0,0 +1,88 @@
+---
+{
+    "title": "DBine",
+    "language": "ko",
+    "description": "무료 오픈 소스 데스크톱 데이터베이스 관리 도구 DBine의 Doris 연결 유형을 사용해 Apache 
Doris에 연결하고, 데이터베이스와 테이블을 탐색하며 SQL을 실행하는 방법을 알아봅니다."
+}
+---
+
+<!-- Knowledge type: Scenario description -->
+<!-- Applicable scenario: Use DBine to connect to and query Apache Doris -->
+
+## 개요 {#overview}
+
+[DBine](https://dbine.com)은 Windows, macOS, Linux에서 사용할 수 있는 무료 오픈 소스(Apache 
2.0 라이선스) 데스크톱 데이터베이스 관리 도구입니다. 하나의 창에서 130개 이상의 데이터베이스와 클라우드 서비스를 다룰 수 있습니다. 
Apache Doris 연결 유형을 제공하며, MySQL 프로토콜을 통해 FE에 연결합니다.
+
+이 문서를 읽고 나면 다음을 할 수 있습니다.
+
+- DBine을 설치하고 Doris 연결을 생성합니다.
+- 내부 Catalog의 데이터베이스, 테이블, 뷰, 컬럼을 탐색하고 Doris에서 SQL을 실행합니다.
+- 조회 결과를 해석할 때 MySQL 서버와 어떤 차이가 있는지 파악합니다.
+
+## 사전 요구 사항 {#prerequisites}
+
+<!-- Knowledge type: Prerequisites -->
+<!-- Applicable scenario: Check the DBine and Doris connection requirements 
before connecting -->
+
+- DBine이 설치되어 있어야 합니다. [릴리스 
페이지](https://github.com/addlayer-io/dbine/releases)에서 다운로드하세요.
+- DBine을 실행하는 컴퓨터에서 FE에 접근할 수 있어야 합니다. Doris 사용자에게 대상 데이터베이스와 테이블에 필요한 권한을 
부여하세요.
+- Doris 클러스터의 연결 정보가 준비되어 있어야 합니다. FE 호스트 주소, FE의 MySQL 프로토콜 포트(기본값 `9030`), 
대상 데이터베이스, 사용자 이름, 비밀번호가 필요합니다.
+
+## Doris에 연결하기 {#connect-to-doris}
+
+<!-- Knowledge type: Procedure -->
+<!-- Applicable scenario: Create a Doris connection in DBine -->
+
+### 1. 연결 추가 {#1-add-a-connection}
+
+DBine에서 **새 연결**을 클릭하고 엔진 목록에서 **Apache Doris**를 선택합니다.
+
+### 2. Doris 연결 설정 {#2-configure-the-doris-connection}
+
+연결 양식에 다음 정보를 입력합니다.
+
+| 필드 | 설명 |
+| --- | --- |
+| 서버 | Doris 클러스터의 FE 호스트 주소입니다. |
+| 포트 | FE의 MySQL 프로토콜 포트입니다. 기본값은 `9030`입니다. |
+| 데이터베이스 | Doris 클러스터의 내부 Catalog에 있는 대상 데이터베이스입니다. 선택 사항입니다. |
+| 사용자 | Doris 클러스터의 사용자 이름입니다. |
+| 비밀번호 | Doris 클러스터의 비밀번호입니다. |
+
+TLS를 사용하는 클러스터라면 **SSL/TLS** 탭을 열고 **연결 암호화(TLS)**를 선택합니다.
+
+### 3. 연결 테스트 및 저장 {#3-test-and-save-the-connection}
+
+**연결 테스트**를 클릭해 연결을 확인한 다음 **저장하고 연결**을 클릭합니다. 연결 테스트 결과에 `Connection 
successful`이 표시되고 **탐색기**에 연결이 나타납니다.
+
+![연결 
설정](/images/next/connection-integration/data-integration/dbine/dbine-connection-form.png)
+
+### 4. 탐색 및 쿼리 실행 {#4-browse-and-query}
+
+**탐색기**에서 연결을 펼치면 Doris 데이터베이스가 표시됩니다. 데이터베이스를 펼치면 테이블, 뷰, 컬럼을 볼 수 있습니다. 
데이터베이스를 마우스 오른쪽 버튼으로 클릭하고 **새 쿼리**를 선택해 SQL 편집기를 연 다음 **실행**을 클릭합니다. 예를 들면 다음과 
같습니다.
+
+```sql
+SELECT @@version_comment AS doris_version;
+```
+
+```text
++--------------------------------------------+
+| doris_version                              |
++--------------------------------------------+
+| doris version doris-4.1.3-rc02-7126cf65d96 |
++--------------------------------------------+
+```
+
+![Doris 탐색 및 쿼리 
실행](/images/next/connection-integration/data-integration/dbine/dbine-editor.png)
+
+## 알려진 제한 사항 {#known-limitations}
+
+아래 내용은 Doris 4.1.3(`apache/doris:all-in-one-4.1.3`)에서 확인했습니다.
+
+| 영역 | 상태 | 상세 내용 |
+| --- | --- | --- |
+| 탐색 및 쿼리 | 정상 | 데이터베이스, 테이블, 뷰, 컬럼이 표시되며 사용자에게 부여된 권한으로 내부 Catalog를 쿼리합니다. 한 
데이터베이스에 대한 `SELECT_PRIV` 권한을 부여받은 사용자는 `information_schema`, `mysql`과 함께 해당 
데이터베이스를 볼 수 있습니다. |
+| 실행 계획 | 정상 | `EXPLAIN`은 Doris의 Nereids 실행 계획을 텍스트로 반환합니다. |
+| 서버 버전 | MySQL 버전 | 연결 테스트와 상태 표시줄에는 Doris가 `version()`을 통해 보고하는 MySQL 버전인 
`5.7.99`가 표시됩니다. Doris 빌드를 확인하려면 `SELECT @@version_comment`를 실행하세요. |
+
+DBine 사용법에 관한 자세한 내용은 [DBine 저장소](https://github.com/addlayer-io/dbine)를 참조하세요.
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/current/data-operate/incremental/changelog.md
 
b/i18n/ko/docusaurus-plugin-content-docs/current/data-operate/incremental/changelog.md
new file mode 100644
index 000000000000..f3f334456d7a
--- /dev/null
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/current/data-operate/incremental/changelog.md
@@ -0,0 +1,464 @@
+---
+{
+    "title": "변경 로그",
+    "language": "ko",
+    "description": "Doris 변경 로그의 행 단위 삽입, 업데이트, 삭제 기록과 테이블 속성, TTL 보존 기간, 자동 
정리, 지원되는 테이블 모델, 문제 해결 방법을 설명합니다.",
+    "keywords": [
+        "Changelog",
+        "Doris changelog",
+        "row-level change log",
+        "changelog.enable",
+        "changelog.need_historical_value",
+        "changelog.ttl_seconds",
+        "changelog TTL",
+        "before image",
+        "historical value",
+        "commit TSO",
+        "__DORIS_CHANGELOG_OP__",
+        "__DORIS_COMMIT_TSO_COL__",
+        "changelog() table function",
+        "Merge-on-Write change records",
+        "Duplicate Key change records",
+        "light schema change",
+        "enable_mow_light_delete",
+        "enable_feature_changelog",
+        "change data capture",
+        "Doris CDC",
+        "Incremental View Maintenance",
+        "IVM",
+        "Not allowed to perform current operation on Table With changelog",
+        "Only duplicate and mow table model support changelog"
+    ]
+}
+---
+
+<!-- Knowledge type: Feature description + Parameter reference -->
+<!-- Use cases: Enabling row-level change recording on a table / Checking 
whether a table model is supported / Inspecting change records -->
+
+Changelog는 Doris 내부 테이블의 행 단위 변경 로그입니다. 활성화하면 쓰기 작업(삽입, 업데이트, 삭제)으로 발생하는 모든 행 
단위 변경이 변경 전후 값과 커밋 타임스탬프와 함께 저장됩니다. Changelog는 [Table Stream](table-stream), 
[증분 쿼리](incremental-query), [증분 뷰 유지 
관리(IVM)](../../query-acceleration/materialized-view/async-materialized-view/incremental-materialized-view)의
 데이터 소스이며, [Flink Doris 
Connector](../../connection-integration/data-integration/flink-doris-connector/incremental-read)(Connector
 26.4.0 이상)를 통해 Flink에서도 소비할 수 있습니다.
+
+변경 레코드는 기본적으로 하루 동안 보존됩니다. 예상되는 최장 소비 지연 시간을 포함하도록 `changelog.ttl_seconds`를 
설정하세요. 변경 레코드가 만료되어도 기본 테이블의 데이터는 삭제되지 않습니다.
+
+Changelog는 클러스터 간 복제(CCR)에 사용되는 binlog와 독립적입니다. 별도의 `changelog.*` 속성과 활성화 설정을 
사용하며, 하나의 테이블에서 두 기능을 동시에 활성화할 수 없습니다. [CCR binlog](#ccr-binlog)를 참조하세요.
+
+:::caution 실험적 기능
+이 기능은 버전 5.0.0부터 제공되는 실험적 기능입니다. FE 구성에서 `enable_feature_changelog = true`로 
설정해야 합니다.
+:::
+
+:::info row binlog에서 이름 변경
+초기 개발 빌드에서는 이 기능을 "row binlog"라고 부르고 `"binlog.enable" = "true"` 및 
`"binlog.format" = "ROW"`로 활성화했습니다. 첫 릴리스 전에 changelog로 이름이 변경되었습니다. 해당 빌드에서 이 
방식으로 만든 테이블은 더 이상 사용할 수 없습니다. 테이블을 삭제한 뒤 `"changelog.enable" = "true"`로 다시 
생성하세요.
+:::
+
+## 사전 요구 사항 {#prerequisites}
+
+<!-- Knowledge type: Environment requirements -->
+
+- Doris 5.0.0 이상.
+- FE의 `fe.conf`에서 `enable_feature_changelog = true`로 설정해야 합니다. 동적 구성이 아니므로 FE를 
재시작해야 합니다. 이 설정은 changelog가 있는 테이블, 커밋 타임스탬프(TSO) 할당, Table Stream 소비를 제어합니다. 
`enable_feature_binlog`는 CCR binlog만 제어하므로 changelog에는 필요하지 않습니다.
+- 자동 정리를 사용하려면 BE의 `be.conf`에서도 `enable_feature_changelog = true`로 설정해야 합니다. 
동적 구성이 아니므로 BE를 재시작해야 합니다.
+- Duplicate Key 테이블 또는 클러스터 키가 없는 Unique Key Merge-on-Write(MoW) 테이블이 필요합니다. 
[지원 범위와 제한 사항](#supported-scope-and-limitations)을 참조하세요.
+- Changelog는 테이블을 생성할 때만 활성화할 수 있으므로 테이블 생성 전에 사용 여부를 결정하세요.
+
+## 기본 개념 {#basic-concepts}
+
+<!-- Knowledge type: Concept description -->
+
+| 개념 | 설명 |
+|---|---|
+| 변경 레코드 | 기본 테이블에서 트랜잭션이 커밋될 때마다 변경된 각 행에 대해 작업 유형(삽입 / 업데이트 / 삭제), 변경 후 값, 
선택적으로 변경 전 값(before image)을 담은 레코드가 하나씩 생성됩니다. |
+| 커밋 타임스탬프(TSO) | 쓰기 트랜잭션이 커밋될 때 FE에서 얻는 전역 단조 증가 타임스탬프로, 물리적 부분(밀리초)과 논리 카운터로 
구성됩니다. 한 트랜잭션의 모든 변경은 같은 TSO를 공유합니다. Table Stream 오프셋과 `@incr` 시간 창은 모두 TSO로 
측정됩니다. |
+| LSN | 트랜잭션 내 변경 레코드의 순서 번호입니다. TSO와 함께 변경 레코드의 순서를 정의합니다. |
+
+## Changelog 활성화 {#enabling-changelog}
+
+<!-- Knowledge type: Operational steps + Configuration parameters -->
+
+Changelog는 `CREATE TABLE`의 테이블 속성으로만 활성화할 수 있으며, 이후에는 비활성화할 수 없습니다.
+
+```sql
+CREATE TABLE orders (
+    order_id BIGINT,
+    status   VARCHAR(16),
+    amount   DECIMAL(10, 2)
+)
+UNIQUE KEY(order_id)
+DISTRIBUTED BY HASH(order_id) BUCKETS 8
+PROPERTIES (
+    "enable_unique_key_merge_on_write" = "true",
+    "changelog.enable" = "true",
+    "changelog.need_historical_value" = "true",
+    "changelog.ttl_seconds" = "86400"
+);
+```
+
+`binlog.*` 속성(`binlog.enable`, `binlog.ttl_seconds` 등)은 changelog가 아닌 CCR 
binlog를 구성합니다. [CCR binlog](#ccr-binlog)를 참조하세요.
+
+### 속성 {#properties}
+
+| 속성 | 값 | 기본값 | 생성 후 변경 가능 여부 | 설명 |
+|---|---|---|---|---|
+| `changelog.enable` | `true` / `false` | `false` | 아니요 | Changelog 활성화 여부입니다. 
`CREATE TABLE`에서만 설정하거나 [데이터베이스 기본값](#database-default)에서 상속할 수 있습니다. |
+| `changelog.need_historical_value` | `true` / `false` | `false` | 아니요 | 변경 전 
값(before image)을 기록할지 여부입니다. Changelog가 활성화되어 있어야 합니다. Unique Key MoW 테이블에서만 
`true`로 설정할 수 있습니다. 업데이트나 삭제를 처리해야 하는 `min_delta` / `detail` Table Stream, 
`MIN_DELTA` 증분 쿼리, IVM은 이 값에 의존합니다. |
+| `changelog.ttl_seconds` | 양의 정수(초) | `86400`(하루) | 예 | 변경 레코드의 보존 기간입니다. 
Changelog가 활성화되어 있어야 합니다. 만료된 레코드는 증분 읽기에서 필터링되고 백그라운드 compaction을 통해 회수됩니다. 
`0`과 음수는 허용되지 않습니다. [보존 및 정리](#retention-and-cleanup)를 참조하세요. |
+
+### 변경할 수 없는 속성 {#changing-immutable-properties}
+
+기존 테이블에서는 `changelog.enable`과 `changelog.need_historical_value`를 변경할 수 없습니다. 
따라서 기존 테이블에서 changelog를 켜거나 끌 수 없습니다. 이러한 변경은 즉시 실패합니다.
+
+```sql
+ALTER TABLE orders SET ("changelog.enable" = "false");
+-- ERROR: not support change changelog.enable from true to false
+
+ALTER TABLE orders SET ("changelog.need_historical_value" = "false");
+-- ERROR: not support change changelog.need_historical_value from true to false
+
+ALTER TABLE t_without_changelog SET ("changelog.enable" = "true");
+-- ERROR: not support change changelog.enable from false to true
+```
+
+Changelog가 없는 기존 테이블에는 changelog를 활성화한 새 테이블을 만들고 데이터를 적재한 뒤, [`ALTER TABLE 
... REPLACE WITH 
TABLE`](../../sql-manual/sql-statements/table-and-view/table/ALTER-TABLE-REPLACE)을
 사용해 두 테이블을 원자적으로 교체하세요.
+
+### 속성 확인 {#viewing-the-properties}
+
+`SHOW CREATE TABLE`은 changelog가 활성화된 테이블의 `changelog.*` 속성을 표시합니다.
+
+```sql
+SHOW CREATE TABLE orders\G
+```
+
+```text
+...
+"changelog.enable" = "true",
+"changelog.ttl_seconds" = "86400",
+"changelog.need_historical_value" = "true",
+...
+```
+
+### 데이터베이스 기본값 {#database-default}
+
+데이터베이스에서 새로 생성하는 테이블에 changelog를 기본으로 활성화할 수 있습니다.
+
+```sql
+CREATE DATABASE changelog_db PROPERTIES ("changelog.enable" = "true");
+```
+
+이후 `changelog_db`에서 생성하는 테이블은 `"changelog.enable" = "false"`를 설정하지 않는 한 
changelog가 활성화되며, 자체 값을 설정하지 않으면 데이터베이스의 `changelog.ttl_seconds`와 
`changelog.need_historical_value`를 사용합니다. Aggregate Key 테이블처럼 changelog를 지원하지 
않는 모델의 테이블에는 이러한 데이터베이스에서 `"changelog.enable" = "false"`를 설정해야 합니다. `ALTER 
DATABASE ... SET PROPERTIES`는 이후 생성되는 테이블의 기본값만 변경합니다.
+
+기본값으로 changelog를 활성화하는 데이터베이스에서는 changelog가 없는 테이블의 `SHOW CREATE TABLE` 결과에 
`"changelog.enable" = "false"`가 표시됩니다. 따라서 `CREATE TABLE ... LIKE`나 해당 출력에서 복사한 
문장으로도 changelog가 없는 테이블이 생성됩니다.
+
+## 지원 범위와 제한 사항 {#supported-scope-and-limitations}
+
+<!-- Knowledge type: Support matrix -->
+<!-- Use cases: Checking table model / column type support before creating the 
table -->
+
+### 테이블 모델 {#table-models}
+
+| 테이블 모델 | 지원 여부 | 참고 |
+|---|---|---|
+| Duplicate Key | 예 | 삽입된 행만 기록됩니다. `changelog.need_historical_value = true`는 
`Duplicate table model don't support record historical value` 오류로 거부됩니다. |
+| Unique Key, Merge-on-Write | 예 | 삽입, 업데이트, 삭제가 기록되며 before image를 활성화할 수 
있습니다. **클러스터 키가 있는 테이블은 지원되지 않으며** `Unique merge-on-write tables with cluster 
keys do not support changelog` 오류가 발생합니다. |
+| Unique Key, Merge-on-Read | 아니요 | `Only duplicate and mow table model 
support changelog` 오류가 발생합니다. |
+| Aggregate Key | 아니요 | 위와 같은 오류가 발생합니다. |
+
+### 컬럼 유형 {#column-types}
+
+| 제한 사항 | 참고 |
+|---|---|
+| 자동 증가 컬럼 | 지원되지 않으며, `CREATE TABLE`과 `ADD COLUMN` 모두 거부됩니다. |
+| VARIANT 컬럼 | 지원되지 않으며, `CREATE TABLE`과 `ADD COLUMN` 모두 거부됩니다. |
+
+### 배포 모드 {#deployment-modes}
+
+Changelog는 스토리지·컴퓨팅 통합 모드와 컴퓨팅·스토리지 분리 모드 모두에서 활성화할 수 있습니다.
+
+### 쓰기 방식 {#write-methods}
+
+모든 쓰기 방식(`INSERT`, `UPDATE`, `DELETE`, Stream Load, Broker Load, Routine Load, 
Flink / Spark 커넥터 등)으로 발생한 변경이 기록되며, 컬럼 부분 업데이트와 유연한 컬럼 부분 업데이트도 포함됩니다.
+
+### 임시 테이블 {#temporary-tables}
+
+임시 테이블에는 changelog가 적용되지 않습니다. 임시 테이블에 `"changelog.enable" = "true"`를 설정하면 
`Cannot create temporary table with changelog enable` 오류가 발생하며, 임시 테이블은 데이터베이스의 
changelog 기본값을 무시합니다.
+
+### CCR binlog {#ccr-binlog}
+
+Changelog와 클러스터 간 복제(CCR)에 사용되는 binlog는 함께 사용할 수 없습니다.
+
+- 테이블에 `"binlog.enable" = "true"`와 `"changelog.enable" = "true"`를 모두 설정할 수 
없으며, changelog가 있는 테이블의 `binlog.*` 속성은 변경할 수 없습니다.
+- CCR binlog가 활성화된 데이터베이스에서는 changelog가 있는 테이블을 생성하거나 복구할 수 없으며, changelog가 있는 
테이블이 포함된 데이터베이스에서는 CCR binlog를 활성화할 수 없습니다.
+- 데이터베이스에서 두 기능을 동시에 활성화할 수 없습니다.
+
+Changelog가 있는 테이블은 백업과 복원도 지원하지 않습니다.
+
+## 변경 레코드 모델 {#change-record-model}
+
+<!-- Knowledge type: Behavior rules -->
+<!-- Use cases: Understanding which change records each write operation 
produces -->
+
+### 작업 유형과 숨겨진 컬럼 {#operation-types-and-hidden-columns}
+
+각 변경 레코드에는 기본 테이블의 모든 표시 컬럼(변경 후 값)과 다음 숨겨진 컬럼이 포함됩니다.
+
+| 숨겨진 컬럼 | 유형 | 설명 |
+|---|---|---|
+| `__DORIS_CHANGELOG_OP__` | BIGINT | 작업 유형입니다. `changelog()` 테이블 함수가 반환하는 원시 
레코드에서는 `0`이 삽입, `1`이 업데이트, `2`가 삭제를 뜻합니다. `@incr` 증분 쿼리에서는 업데이트가 두 행으로 나뉘며, 
`0`은 삽입, `1`은 삭제, `2`는 업데이트 전, `3`은 업데이트 후를 뜻합니다. |
+| `__DORIS_CHANGELOG_TSO__` | BIGINT | 커밋 타임스탬프입니다. |
+| `__DORIS_CHANGELOG_LSN__` | BIGINT | 트랜잭션 내 순서 번호입니다. |
+| `__DORIS_CHANGELOG_BEFORE_<column>__` | 원본 컬럼과 동일 | 변경 전 값이며 키가 아닌 각 컬럼마다 
하나씩 있습니다. `changelog.need_historical_value = true`인 경우에만 존재합니다. |
+
+기본 테이블 자체에는 각 행의 마지막 쓰기 작업에 대한 커밋 타임스탬프를 담는 숨겨진 컬럼 `__DORIS_COMMIT_TSO_COL__`이 
추가됩니다. `SET show_hidden_columns = true`를 실행한 후 직접 쿼리할 수 있습니다.
+
+```sql
+SET show_hidden_columns = true;
+SELECT order_id, status, __DORIS_COMMIT_TSO_COL__ FROM orders;
+```
+
+### Duplicate Key 테이블 {#duplicate-key-tables}
+
+Duplicate Key 테이블에서는 삽입만 발생합니다. 모든 쓰기 작업의 모든 행이 삽입 레코드로 기록되며, 같은 키를 가진 행도 병합되지 
않습니다.
+
+Duplicate Key 테이블에서 `DELETE FROM ... WHERE ...`를 실행하면 행에 삭제 조건자가 표시되며 **변경 
레코드는 생성되지 않습니다**. Table Stream이나 `@incr`를 사용하는 다운스트림 소비자는 이러한 삭제를 확인할 수 없습니다. 
삭제를 다운스트림에 전달해야 한다면 Unique Key MoW 테이블을 사용하세요.
+
+### Unique Key MoW 테이블 {#unique-key-mow-tables}
+
+| 쓰기 작업 | 기록 방식 |
+|---|---|
+| 존재하지 않는 키 쓰기 | 삽입 레코드 하나 |
+| 이미 존재하는 키 쓰기(같은 키로 `INSERT`, `UPDATE`, 컬럼 부분 업데이트) | 업데이트 후 전체 행을 담은 업데이트 
레코드 하나. before image가 활성화된 경우 업데이트 전 값도 포함합니다. |
+| 기존 키 삭제(`DELETE`, 삭제 표시를 포함한 데이터 적재) | 삭제 레코드 하나. before image가 활성화된 경우 삭제 전 
값을 담으며, 그렇지 않으면 키 컬럼에만 값이 있습니다. |
+| 키를 삭제한 후 같은 키 다시 쓰기 | 삽입 레코드 하나(이전 버전은 활성 행이 아닌 삭제 마커입니다). |
+| 표시되는 행보다 낮은 시퀀스 컬럼 값 쓰기 | 쓰기 작업이 버려지고 변경 레코드는 생성되지 않습니다. |
+
+MoW 테이블의 `DELETE`는 기본적으로 삭제 마커를 쓰는 방식으로 구현되므로 삭제 레코드를 생성합니다. 테이블 속성 
`enable_mow_light_delete`가 `true`이면 `DELETE`가 대신 삭제 조건자를 사용하며, Duplicate Key 
테이블에서와 마찬가지로 변경 레코드를 생성하지 않습니다. Changelog가 있는 테이블에서는 이 속성을 기본값인 `false`로 유지하세요.
+
+컬럼 부분 업데이트는 업데이트된 컬럼만이 아니라 병합된 전체 행을 기록합니다. 유연한 컬럼 부분 
업데이트(`unique_key_update_mode = UPDATE_FLEXIBLE_COLUMNS`)에서 한 배치 안에 같은 키를 삭제한 뒤 
다시 쓰면 업데이트 레코드 하나로 기록됩니다. before image에는 삭제 전의 기존 행이, after image에는 새로 쓴 행이 
담기며, 제공하지 않은 컬럼에는 기존 값 대신 기본값 또는 NULL이 들어갑니다.
+
+다음 예제는 before image가 활성화된 MoW 테이블의 원시 변경 레코드를 보여줍니다.
+
+```sql
+INSERT INTO orders VALUES (1, 'created', 100.00);
+INSERT INTO orders VALUES (1, 'paid', 100.00);
+DELETE FROM orders WHERE order_id = 1;
+INSERT INTO orders VALUES (1, 'created', 150.00);
+
+SELECT __DORIS_CHANGELOG_OP__ AS op, order_id, status, amount,
+       __DORIS_CHANGELOG_BEFORE_status__ AS before_status,
+       __DORIS_CHANGELOG_BEFORE_amount__ AS before_amount
+FROM changelog("table" = "orders")
+ORDER BY __DORIS_CHANGELOG_TSO__, __DORIS_CHANGELOG_LSN__;
+```
+
+```text
++------+----------+---------+--------+---------------+---------------+
+| op   | order_id | status  | amount | before_status | before_amount |
++------+----------+---------+--------+---------------+---------------+
+|    0 |        1 | created | 100.00 | NULL          |          NULL |
+|    1 |        1 | paid    | 100.00 | created       |        100.00 |
+|    2 |        1 | paid    | 100.00 | paid          |        100.00 |
+|    0 |        1 | created | 150.00 | NULL          |          NULL |
++------+----------+---------+--------+---------------+---------------+
+```
+
+## DDL 제한 사항 {#ddl-restrictions}
+
+<!-- Knowledge type: Behavior rules -->
+<!-- Use cases: Checking which ALTER TABLE operations remain available with 
changelog enabled -->
+
+Changelog가 활성화된 테이블에서는 다음 `ALTER TABLE` 작업만 허용됩니다.
+
+| 허용되는 작업 | 참고 |
+|---|---|
+| `ADD COLUMN` / `DROP COLUMN` | light schema change로만 허용됩니다. 테이블에서 
`light_schema_change`가 활성화되어 있어야 하며, 기본적으로 활성화됩니다. 새 컬럼은 변경 레코드에 자동으로 추가됩니다. |
+| `CREATE INDEX` / `DROP INDEX` | light index 변경만 허용됩니다. |
+| `ADD ROLLUP` / `DROP ROLLUP` / `RENAME ROLLUP` | |
+| 파티션 작업: `ADD PARTITION`, `DROP PARTITION`, `MODIFY PARTITION`, `RENAME 
PARTITION`, `REPLACE PARTITION` | |
+| 테이블 `RENAME`, `REPLACE WITH TABLE` | |
+| 테이블 주석 또는 컬럼 주석 수정 | |
+| 버킷 구성 수정 | |
+| 테이블 속성 수정 | `bloom_filter_columns` / `bloom_filter_fpp` 제외 |
+| `ENABLE FEATURE`(`SEQUENCE_LOAD` 등) | 내부적으로 `ADD COLUMN`으로 변환됩니다. |
+
+다른 작업은 `Not allowed to perform current operation on Table With changelog` 오류로 
거부됩니다. 대표적인 예는 다음과 같습니다.
+
+- `MODIFY COLUMN`(컬럼 유형이나 위치 변경 등)
+- `RENAME COLUMN`
+- `ORDER BY`(컬럼 순서 변경)
+- `BUILD INDEX`
+- bloom filter 속성 수정
+
+Changelog가 있는 테이블에서도 `TRUNCATE TABLE`은 평소처럼 작동하지만, 백업과 복원은 지원되지 않습니다. 기본 테이블의 
스키마 및 파티션 변경이 기존 Table Stream에 미치는 영향은 [Table Stream 고급 
기능](table-stream-advanced#effect-of-base-table-changes)에 설명되어 있습니다.
+
+## 보존 및 정리 {#retention-and-cleanup}
+
+<!-- Knowledge type: Behavior rules -->
+<!-- Use cases: Setting retention / Handling expired offsets / Capacity 
planning -->
+
+Doris 5.0.0부터 `changelog.ttl_seconds`는 스토리지·컴퓨팅 통합 모드와 컴퓨팅·스토리지 분리 모드 모두에서 
changelog 보존 기간을 제어합니다. 보존 기간은 커밋 TSO의 물리적 시간을 기준으로 하며, 현재 Master FE TSO를 참조 
시간으로 사용합니다. 커밋 시간이 참조 시간에서 TTL을 뺀 시점 이전이거나 같은 레코드는 만료됩니다. 테이블에 새 쓰기 작업이 없어도 보존 
기간의 시간 창은 앞으로 이동합니다.
+
+### 보존 기간 구성 {#configuring-retention}
+
+기본 TTL은 `86400`초(하루)입니다. 데이터베이스에 `changelog.ttl_seconds`가 설정되어 있으면 changelog가 
있는 새 테이블은 자체 테이블 속성으로 재정의하지 않는 한 이 값을 상속합니다. 데이터베이스 설정을 변경해도 기존 테이블에는 영향을 주지 
않습니다. `CREATE TABLE ... LIKE`는 원본 테이블의 TTL을 복사합니다.
+
+앞에서 만든 `orders` 테이블의 변경을 일주일 동안 보존하려면 다음을 실행하세요.
+
+```sql
+ALTER TABLE orders SET ("changelog.ttl_seconds" = "604800");
+```
+
+문장이 성공하면 `SHOW CREATE TABLE orders` 결과에 다음이 포함됩니다.
+
+```text
+"changelog.ttl_seconds" = "604800"
+```
+
+TTL은 `0`보다 커야 하며, `0`이나 `-1`로 만료를 비활성화할 수 없습니다. TTL을 줄이면 기존 레코드가 즉시 만료될 수 
있습니다. TTL을 늘리면 물리적으로 아직 남아 있는 레코드를 다시 읽을 수 있지만, 이미 정리된 레코드는 복구할 수 없습니다. 파티션에 
설정을 게시하는 중 `ALTER TABLE`이 실패했다면 더 짧은 TTL이 이미 적용되었을 수 있습니다. `SHOW CREATE TABLE`을 
확인하고 같은 문장을 다시 실행해 업데이트를 완료하세요.
+
+### 읽기에 미치는 영향 {#effect-on-reads}
+
+증분 읽기는 물리적 정리가 완료되기 전이라도 문장 계획 단계에서 보존 기간의 시간 창을 적용합니다. 한 문장은 하나의 참조 TSO를 
사용하며, 새 문장마다 시간 창을 다시 계산합니다.
+
+| 읽기 방식 | 요청한 시작 지점이 만료되었을 때의 동작 |
+|---|---|
+| `startTimestamp`가 없는 `@incr` | `MIN_DELTA` 모드를 포함해 보존 중인 변경만 읽습니다. |
+| `incrementType = MIN_DELTA`이고 `startTimestamp`를 명시한 `@incr` | 불완전한 순변경 결과를 
반환하지 않도록 `Changelog offset has expired according to changelog.ttl_seconds` 오류가 
발생합니다. |
+| `incrementType = DETAIL` 또는 `APPEND_ONLY`인 `@incr` | 실제 시작 지점을 보존 중인 첫 TSO로 
옮기고 요청한 시간 창에서 보존 중인 부분만 반환합니다. |
+| `type = min_delta`인 Table Stream | 파티션의 소비 오프셋이 만료되었다면 같은 오류가 발생합니다. |
+| `type = detail` 또는 `append_only`인 Table Stream | 만료된 변경을 건너뛰고 보존 중인 첫 TSO부터 
읽습니다. |
+| MoW 스냅샷 읽기(`FOR TIME AS OF`, `FOR VERSION AS OF`, 또는 Stream의 `@snapshot()`) 
| 재구성에 changelog가 필요할 때 대상 스냅샷이 만료되었다면, 해당 before image가 보존 기간의 시간 창에 더 이상 없으므로 
같은 오류가 발생합니다. |
+| `changelog()` 테이블 함수 | TTL 필터를 적용하지 않습니다. 물리적 정리로 제거되기 전까지 만료된 원시 레코드가 표시될 수 
있습니다. |
+
+만료는 소비자를 기다리지 않습니다. Stream이 `IS_STALE` / `STALE_REASON`에서 여전히 사용 가능한 것으로 
표시되더라도 보존 기간 안에 변경을 소비하세요. 현재 구현에서는 이 필드들이 TTL 만료를 보고하지 않습니다. 필요한 변경이 만료되었다면 전체 
스냅샷에서 다운스트림 데이터를 다시 구축하세요. Table Stream에서는 [재설정 
절차](table-stream-advanced#reset-reset)를 사용해 다운스트림을 다시 데이터 적재하고 오프셋을 진행시키세요. 
IVM의 내부 Stream은 [구체화된 뷰 새로 고침 
작업](../../query-acceleration/materialized-view/async-materialized-view/incremental-materialized-view#internal-table-streams)을
 통해 관리하세요.
+
+### 예제: 기본 데이터는 보존되고 변경은 만료되는 경우 
{#example-expired-changes-with-base-data-preserved}
+
+`CREATE` 및 `LOAD` 권한과 쿼리에 필요한 `SELECT` 권한이 있는 기존 데이터베이스에서 이 예제를 실행하세요.
+
+```sql
+CREATE TABLE changelog_ttl_demo (id INT, value INT)
+DUPLICATE KEY(id)
+DISTRIBUTED BY HASH(id) BUCKETS 1
+PROPERTIES (
+    "replication_num" = "1",
+    "changelog.enable" = "true",
+    "changelog.ttl_seconds" = "30"
+);
+
+INSERT INTO changelog_ttl_demo VALUES (1, 10);
+
+SELECT COUNT(*) AS change_count
+FROM changelog_ttl_demo@incr("incrementType" = "DETAIL");
+```
+
+삽입 직후 쿼리는 다음을 반환합니다.
+
+```text
++--------------+
+| change_count |
++--------------+
+|            1 |
++--------------+
+```
+
+30초 넘게 기다린 후 증분 쿼리를 다시 실행하세요.
+
+```sql
+SELECT COUNT(*) AS change_count
+FROM changelog_ttl_demo@incr("incrementType" = "DETAIL");
+```
+
+```text
++--------------+
+| change_count |
++--------------+
+|            0 |
++--------------+
+```
+
+기본 테이블의 행은 여전히 남아 있습니다.
+
+```sql
+SELECT id, value FROM changelog_ttl_demo;
+```
+
+```text
++------+-------+
+| id   | value |
++------+-------+
+|    1 |    10 |
++------+-------+
+```
+
+### 물리적 정리 및 용량 계획 {#physical-cleanup-and-capacity-planning}
+
+백그라운드 compaction은 사용하지 않는 테이블을 포함해 완전히 만료된 changelog Rowset을 회수합니다. 만료되지 않은 
레코드도 포함된 Rowset은 모든 레코드가 만료될 때까지 보존됩니다. 정리 작업은 기본 테이블의 데이터와 버전 연속성을 유지합니다. 
스토리지는 비동기적으로 회수되므로 TTL은 파일이 사라지는 시한이나 엄격한 스토리지 크기 제한이 아닙니다.
+
+자동 정리를 사용하려면 BE에서 `enable_feature_changelog = true`로 설정하고 자동 compaction을 활성화해야 
합니다. BE 구성이나 테이블 속성 `disable_auto_compaction = true`를 설정하면 자동 정리가 일시 중지되지만, 증분 
읽기는 만료된 레코드를 계속 필터링합니다. BE를 재시작한 후에는 Master FE의 heartbeat에서 유효한 참조 TSO를 받을 때까지 
정리를 기다립니다.
+
+Changelog 보존은 시간으로만 제한되며 크기나 개수 제한은 없습니다. 쓰기량, TTL, 정리 지연을 고려해 스토리지 용량을 확보하세요. 
Before image가 활성화된 MoW 테이블에서는 업데이트할 때마다 이전 값의 사본이 추가로 저장됩니다. 복구에 필요한 시간을 고려하여 
TTL을 최대 소비 지연, 새로 고침 간격, 예상 장애 시간보다 길게 설정하세요.
+
+## 쓰기 작업의 오버헤드 {#write-overhead}
+
+<!-- Knowledge type: Performance notes -->
+<!-- Use cases: Evaluating load throughput before going to production -->
+
+Changelog를 활성화하면 모든 쓰기 작업에서 변경 레코드를 추가로 생성하고 저장합니다. MoW 테이블에서는 업데이트와 삭제 시 
before image를 만들기 위해 이전 값도 읽습니다. 데이터 적재 처리량이 눈에 띄게 감소하며, 실제 감소 폭은 테이블 스키마와 업데이트 
비율에 따라 달라집니다. 권장 사항은 다음과 같습니다.
+
+- 증분 소비가 실제로 필요한 테이블에서만 활성화하세요.
+- 프로덕션에 적용하기 전에 실제와 비슷한 쓰기 작업으로 처리량 변화를 평가하세요.
+- 변경 전 값이 필요하지 않다면(예: `append_only` 소비 또는 최신 값만 중요한 경우) 
`changelog.need_historical_value`를 활성화하지 마세요.
+
+## changelog() 테이블 함수로 문제 해결 
{#troubleshooting-with-the-changelog-table-function}
+
+<!-- Knowledge type: Troubleshooting -->
+<!-- Use cases: Confirming whether a write produced the expected changes / 
Inspecting the change history of a key -->
+
+`changelog()` 테이블 함수는 테이블의 원시 변경 레코드를 반환합니다. 이를 통해 쓰기 작업에서 예상한 변경이 생성되었는지 
확인하거나 특정 키의 변경 이력을 조사할 수 있습니다.
+
+:::caution
+`changelog()`는 주로 내부 디버깅용이며 프로덕션 데이터 파이프라인에는 권장되지 않습니다. 출력 형식과 매개변수는 버전마다 바뀔 수 
있습니다. 실제 증분 소비에는 [Table Stream](table-stream)이나 [`@incr`](incremental-query)를 
사용하세요.
+:::
+
+```sql
+SELECT __DORIS_CHANGELOG_OP__, __DORIS_CHANGELOG_TSO__, 
__DORIS_CHANGELOG_LSN__,
+       order_id, status, amount
+FROM changelog(
+    "db" = "demo",
+    "table" = "orders",
+    "partition" = "p20260914"
+)
+WHERE order_id = 1
+ORDER BY __DORIS_CHANGELOG_TSO__, __DORIS_CHANGELOG_LSN__;
+```
+
+| 매개변수 | 필수 여부 | 설명 |
+|---|---|---|
+| `table` | 예 | 테이블 이름 |
+| `db` | 아니요 | 데이터베이스 이름. 기본값은 현재 데이터베이스입니다. |
+| `partition` | 아니요 | 쉼표로 구분한 파티션 이름. 기본값은 모든 파티션입니다. |
+| `tablet` | 아니요 | 쉼표로 구분한 Tablet ID. 기본값은 모든 Tablet입니다. |
+
+`changelog()`는 변경을 합치거나 TTL로 필터링하지 않고 저장된 원시 레코드를 읽으며, 
`__DORIS_CHANGELOG_OP__`는 원시 인코딩(`0` 삽입, `1` 업데이트, `2` 삭제)을 사용합니다. 물리적 정리가 끝날 
때까지 만료된 레코드도 여기에서 보일 수 있습니다. `changelog.need_historical_value = true`인 테이블에서 
`changelog()`에 `SELECT *`를 실행하면 이름이 예약된 접두사 `__DORIS_`로 시작하는 before-image 컬럼도 
반환됩니다. `changelog()`를 기반으로 뷰, CTAS 테이블 또는 구체화된 뷰를 정의하려면 컬럼을 나열하고 숨겨진 컬럼과 
before-image 컬럼에 별칭을 지정하세요. 전체 구문은 [CHANGELOG 테이블 
함수](../../sql-manual/sql-functions/table-valued-functions/changelog)를 참조하세요.
+
+## 일반적인 오류 {#common-errors}
+
+<!-- Knowledge type: Troubleshooting -->
+
+| 오류 메시지 | 원인 | 조치 |
+|---|---|---|
+| `Property binlog.format is no longer supported, use "changelog.enable" = 
"true" to enable changelog, or remove it for CCR binlog` | 문장에서 초기 개발 빌드가 
changelog 활성화에 사용했던 `binlog.format`을 사용했습니다. | `"changelog.enable" = "true"`로 
changelog를 활성화하세요. CCR binlog를 사용하려면 해당 속성을 제거하세요. |
+| `Property binlog.need_historical_value is no longer supported, use 
changelog.need_historical_value instead` | 문장에서 초기 개발 빌드의 속성 이름을 사용했습니다. | 
`changelog.need_historical_value`를 사용하세요. |
+| `Table <db>.<table> was created with "binlog.format" = "ROW", which is no 
longer supported; drop the table and create it again with "changelog.enable" = 
"true"` | 초기 개발 빌드에서 테이블을 생성했습니다. | 테이블을 삭제한 뒤 `"changelog.enable" = "true"`로 
다시 생성하세요. |
+| `Cannot create table <table> with changelog when 
enable_feature_changelog=false` | FE에서 changelog가 활성화되지 않았습니다. | `fe.conf`에서 
`enable_feature_changelog = true`로 설정하고 FE를 재시작하세요. |
+| `changelog.ttl_seconds must be greater than 0` | TTL이 `0`이거나 음수입니다. | 양의 정수로 
초 단위 값을 설정하세요. 기본값은 `86400`입니다. |
+| `Changelog offset has expired according to changelog.ttl_seconds` | 
`MIN_DELTA` 시작 지점이나 MoW 스냅샷이 보존 기간의 시간 창을 벗어났습니다. | 전체 스냅샷에서 다운스트림을 다시 구축하고 소비 
위치를 재조정하세요. [읽기에 미치는 영향](#effect-on-reads)을 참조하세요. |
+| `not support change changelog.enable from false to true` | 기존 테이블에서 
changelog를 활성화하려고 `ALTER TABLE`을 사용했습니다. | Changelog는 테이블 생성 시에만 활성화할 수 있습니다. 
Changelog가 활성화된 새 테이블을 만들고 데이터를 적재한 뒤 `ALTER TABLE ... REPLACE WITH TABLE`로 두 
테이블을 교체하세요. |
+| `not support change changelog.enable from true to false` | Changelog가 활성화된 
테이블에 `changelog.enable = false`를 설정했습니다. | 활성화된 changelog는 비활성화할 수 없습니다. |
+| `not support change changelog.need_historical_value from true to false` | 
`changelog.need_historical_value`를 수정했습니다. | 이 속성은 테이블 생성 후 변경할 수 없습니다. |
+| `Property <property> requires "changelog.enable" = "true"` | Changelog를 
활성화하지 않은 테이블의 `CREATE TABLE`에서 `changelog.ttl_seconds` 또는 
`changelog.need_historical_value`를 설정했습니다. | 테이블에서 changelog를 활성화하거나 해당 속성을 
제거하세요. |
+| `changelog.ttl_seconds can not be set because changelog is not enabled for 
table: <table>` | Changelog가 없는 테이블에서 `ALTER TABLE`로 `changelog.ttl_seconds`를 
설정했습니다. | Changelog 보존 기간은 changelog가 있는 테이블에만 적용됩니다. |
+| `Duplicate table model don't support record historical value` | Duplicate 
Key 테이블에 `changelog.need_historical_value = true`를 설정했습니다. | Duplicate Key 
테이블에는 before image가 없습니다. 해당 속성을 제거하거나, before image가 필요하면 Unique Key MoW 테이블을 
사용하세요. |
+| `Unique merge-on-write tables with cluster keys do not support changelog` | 
MoW 테이블에 클러스터 키가 있습니다. | 클러스터 키 없이 테이블을 생성하세요. |
+| `Only duplicate and mow table model support changelog` | 테이블 모델이 Aggregate 
Key 또는 Unique Key Merge-on-Read입니다. | Duplicate Key 또는 Unique Key MoW 테이블을 
사용하세요. 기본값으로 changelog가 활성화되는 데이터베이스에서는 이러한 테이블에 `"changelog.enable" = 
"false"`를 설정하세요. |
+| `Table <table> can not enable both binlog and changelog` | `CREATE TABLE`에서 
`binlog.enable`과 `changelog.enable`을 모두 `true`로 설정했습니다. | 둘 중 하나를 선택하세요. [CCR 
binlog](#ccr-binlog)를 참조하세요. |
+| `Can not create table <table> with changelog in database <db> because the 
database enables binlog` | 데이터베이스에서 CCR binlog가 활성화되어 있습니다. | CCR binlog가 없는 
데이터베이스에서 테이블을 생성하세요. |
+| `Cannot create temporary table with changelog enable` | 임시 테이블에 
`"changelog.enable" = "true"`를 설정했습니다. | 임시 테이블에는 changelog를 사용할 수 없습니다. |
+| `Not allowed to perform current operation on Table With changelog` | `MODIFY 
COLUMN`, `RENAME COLUMN`, `ORDER BY`, `BUILD INDEX`, bloom filter 속성 수정 등 허용되지 
않는 DDL을 실행했습니다. | [DDL 제한 사항](#ddl-restrictions)의 허용 목록을 참조하세요. |
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md
 
b/i18n/ko/docusaurus-plugin-content-docs/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md
index b045b98db4b8..4ead1d873d17 100644
--- 
a/i18n/ko/docusaurus-plugin-content-docs/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md
@@ -373,9 +373,9 @@ rollup으로 동기식 구체화된 뷰를 생성하는 기능은 제약이 있
 | enable_mow_light_delete | Mow를 사용하는 Unique 테이블에서 Delete 문으로 Delete 
predicate를 쓰는 기능을 활성화할지 여부입니다. 활성화하면 Delete 문의 성능이 개선되지만, Delete 이후 부분 열 업데이트를 
수행하면 일부 데이터 오류가 발생할 수 있습니다. 비활성화하면 정확성을 보장하기 위해 Delete 문의 성능이 저하됩니다. 이 속성의 기본값은 
`false`입니다. 이 속성은 Unique Merge-on-Write 테이블에서만 활성화할 수 있습니다. |
 | 동적 파티셔닝 관련 속성 | 동적 파티셔닝에 대해서는 [데이터 파티셔닝 - 동적 
파티셔닝](../../../../table-design/data-partitioning/dynamic-partitioning)을 참조하세요. |
 | enable_unique_key_skip_bitmap_column | Unique Merge-on-Write 테이블에서 [유연한 열 
업데이트 
기능](../../../../data-operate/update/partial-column-update.md#flexible-column-update)을
 활성화할지 여부입니다. 이 속성은 Unique Merge-on-Write 테이블에서만 활성화할 수 있습니다. |
-| binlog.enable | `binlog.format = "ROW"`와 함께 테이블에서 [Row 
Binlog](../../../../data-operate/incremental/row-binlog)를 활성화하여, Table Stream에서 
소비하고 `@incr` 증분 쿼리에서 사용할 행 단위 변경 사항을 기록합니다. 테이블 생성 시에만 활성화할 수 있으며, 이후에는 비활성화할 수 
없습니다. 5.0.0부터 사용할 수 있습니다. |
-| binlog.format | `ROW`(대소문자 구분)는 행 단위 변경 사항을 기록한다는 의미입니다. Duplicate Key 테이블과 
Unique Key Merge-on-Write 테이블(cluster key가 없는 경우)만 지원합니다. 생성 후에는 변경할 수 없습니다. |
-| binlog.need_historical_value | Row Binlog에서 변경 전 값(before image)을 기록할지 여부이며, 
기본값은 `false`입니다. Unique Key Merge-on-Write 테이블에서만 `true`로 설정할 수 있습니다. 
`min_delta` / `detail` Table Stream은 이 속성에 의존합니다. 생성 후에는 변경할 수 없습니다. |
+| changelog.enable | 테이블에서 
[changelog](../../../../data-operate/incremental/changelog)를 활성화하여 Table 
Stream에서 소비하고 `@incr` 증분 쿼리에서 사용할 행 단위 변경 사항을 기록합니다. Duplicate Key 테이블과 Unique 
Key Merge-on-Write 테이블(cluster key가 없는 경우)만 지원합니다. 테이블 생성 시에만 활성화할 수 있으며 이후에는 
비활성화할 수 없습니다. `binlog.enable`(CCR)과 함께 사용할 수 없습니다. FE에서 
`enable_feature_changelog = true`로 설정해야 합니다. 5.0.0부터 사용할 수 있습니다. |
+| changelog.need_historical_value | changelog에서 변경 전 값(before image)을 기록할지 
여부이며, 기본값은 `false`입니다. Unique Key Merge-on-Write 테이블에서만 `true`로 설정할 수 있습니다. 
`min_delta` / `detail` Table Stream은 이 속성에 의존합니다. 생성 후에는 변경할 수 없습니다. |
+| changelog.ttl_seconds | 변경 기록의 보존 기간을 초 단위로 설정합니다. 기본값은 `86400`(하루)이며 `0`보다 
커야 합니다. `ALTER TABLE`로 변경할 수 있습니다. |
 
 ## 접근 제어 요구 사항 {#access-control-requirements}
 
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/dbine.md
 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/dbine.md
new file mode 100644
index 000000000000..65b76b1fdaa7
--- /dev/null
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/dbine.md
@@ -0,0 +1,88 @@
+---
+{
+    "title": "DBine",
+    "language": "ko",
+    "description": "무료 오픈 소스 데스크톱 데이터베이스 관리 도구 DBine의 Doris 연결 유형을 사용해 Apache 
Doris에 연결하고, 데이터베이스와 테이블을 탐색하며 SQL을 실행하는 방법을 알아봅니다."
+}
+---
+
+<!-- Knowledge type: Scenario description -->
+<!-- Applicable scenario: Use DBine to connect to and query Apache Doris -->
+
+## 개요 {#overview}
+
+[DBine](https://dbine.com)은 Windows, macOS, Linux에서 사용할 수 있는 무료 오픈 소스(Apache 
2.0 라이선스) 데스크톱 데이터베이스 관리 도구입니다. 하나의 창에서 130개 이상의 데이터베이스와 클라우드 서비스를 다룰 수 있습니다. 
Apache Doris 연결 유형을 제공하며, MySQL 프로토콜을 통해 FE에 연결합니다.
+
+이 문서를 읽고 나면 다음을 할 수 있습니다.
+
+- DBine을 설치하고 Doris 연결을 생성합니다.
+- 내부 Catalog의 데이터베이스, 테이블, 뷰, 컬럼을 탐색하고 Doris에서 SQL을 실행합니다.
+- 조회 결과를 해석할 때 MySQL 서버와 어떤 차이가 있는지 파악합니다.
+
+## 사전 요구 사항 {#prerequisites}
+
+<!-- Knowledge type: Prerequisites -->
+<!-- Applicable scenario: Check the DBine and Doris connection requirements 
before connecting -->
+
+- DBine이 설치되어 있어야 합니다. [릴리스 
페이지](https://github.com/addlayer-io/dbine/releases)에서 다운로드하세요.
+- DBine을 실행하는 컴퓨터에서 FE에 접근할 수 있어야 합니다. Doris 사용자에게 대상 데이터베이스와 테이블에 필요한 권한을 
부여하세요.
+- Doris 클러스터의 연결 정보가 준비되어 있어야 합니다. FE 호스트 주소, FE의 MySQL 프로토콜 포트(기본값 `9030`), 
대상 데이터베이스, 사용자 이름, 비밀번호가 필요합니다.
+
+## Doris에 연결하기 {#connect-to-doris}
+
+<!-- Knowledge type: Procedure -->
+<!-- Applicable scenario: Create a Doris connection in DBine -->
+
+### 1. 연결 추가 {#1-add-a-connection}
+
+DBine에서 **새 연결**을 클릭하고 엔진 목록에서 **Apache Doris**를 선택합니다.
+
+### 2. Doris 연결 설정 {#2-configure-the-doris-connection}
+
+연결 양식에 다음 정보를 입력합니다.
+
+| 필드 | 설명 |
+| --- | --- |
+| 서버 | Doris 클러스터의 FE 호스트 주소입니다. |
+| 포트 | FE의 MySQL 프로토콜 포트입니다. 기본값은 `9030`입니다. |
+| 데이터베이스 | Doris 클러스터의 내부 Catalog에 있는 대상 데이터베이스입니다. 선택 사항입니다. |
+| 사용자 | Doris 클러스터의 사용자 이름입니다. |
+| 비밀번호 | Doris 클러스터의 비밀번호입니다. |
+
+TLS를 사용하는 클러스터라면 **SSL/TLS** 탭을 열고 **연결 암호화(TLS)**를 선택합니다.
+
+### 3. 연결 테스트 및 저장 {#3-test-and-save-the-connection}
+
+**연결 테스트**를 클릭해 연결을 확인한 다음 **저장하고 연결**을 클릭합니다. 연결 테스트 결과에 `Connection 
successful`이 표시되고 **탐색기**에 연결이 나타납니다.
+
+![연결 
설정](/images/next/connection-integration/data-integration/dbine/dbine-connection-form.png)
+
+### 4. 탐색 및 쿼리 실행 {#4-browse-and-query}
+
+**탐색기**에서 연결을 펼치면 Doris 데이터베이스가 표시됩니다. 데이터베이스를 펼치면 테이블, 뷰, 컬럼을 볼 수 있습니다. 
데이터베이스를 마우스 오른쪽 버튼으로 클릭하고 **새 쿼리**를 선택해 SQL 편집기를 연 다음 **실행**을 클릭합니다. 예를 들면 다음과 
같습니다.
+
+```sql
+SELECT @@version_comment AS doris_version;
+```
+
+```text
++--------------------------------------------+
+| doris_version                              |
++--------------------------------------------+
+| doris version doris-4.1.3-rc02-7126cf65d96 |
++--------------------------------------------+
+```
+
+![Doris 탐색 및 쿼리 
실행](/images/next/connection-integration/data-integration/dbine/dbine-editor.png)
+
+## 알려진 제한 사항 {#known-limitations}
+
+아래 내용은 Doris 4.1.3(`apache/doris:all-in-one-4.1.3`)에서 확인했습니다.
+
+| 영역 | 상태 | 상세 내용 |
+| --- | --- | --- |
+| 탐색 및 쿼리 | 정상 | 데이터베이스, 테이블, 뷰, 컬럼이 표시되며 사용자에게 부여된 권한으로 내부 Catalog를 쿼리합니다. 한 
데이터베이스에 대한 `SELECT_PRIV` 권한을 부여받은 사용자는 `information_schema`, `mysql`과 함께 해당 
데이터베이스를 볼 수 있습니다. |
+| 실행 계획 | 정상 | `EXPLAIN`은 Doris의 Nereids 실행 계획을 텍스트로 반환합니다. |
+| 서버 버전 | MySQL 버전 | 연결 테스트와 상태 표시줄에는 Doris가 `version()`을 통해 보고하는 MySQL 버전인 
`5.7.99`가 표시됩니다. Doris 빌드를 확인하려면 `SELECT @@version_comment`를 실행하세요. |
+
+DBine 사용법에 관한 자세한 내용은 [DBine 저장소](https://github.com/addlayer-io/dbine)를 참조하세요.
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/intro.mdx
 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/intro.mdx
index 4cc0a8212ff2..c603a79fe372 100644
--- 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/intro.mdx
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/intro.mdx
@@ -102,6 +102,13 @@ Apache Doris는 다양한 데이터 생태계 도구와의 통합을 지원합
     description="LibreDB Studio의 MySQL 연결 유형을 사용하여 Doris에 연결하고, 브라우저에서 내부 
Catalog를 탐색하고 SQL을 실행합니다"
     link="./libredb-studio"
 />
+
+<GettingStartedCard
+    title="DBine"
+    icon="/images/next/connection-integration/data-integration/logos/dbine.svg"
+    description="DBine의 Apache Doris 연결 유형을 사용하여 Doris에 연결하고, 데스크톱 앱에서 내부 
Catalog를 탐색하고 SQL을 실행합니다"
+    link="./dbine"
+/>
 </div>
 
 ## 데이터 마이그레이션, 동기화 및 대량 데이터 적재 
{#data-migration-synchronization-and-bulk-loading}
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/data-update-delete.mdx
 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/data-update-delete.mdx
index 3287fd2ffa01..90cc559370ac 100644
--- 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/data-update-delete.mdx
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/data-update-delete.mdx
@@ -120,6 +120,6 @@ Apache Doris의 데이터 업데이트 및 삭제는 Unique Key 테이블로의
 - [삭제 개요: 조건자 삭제, 일괄 삭제, 원자적 교체](../data-operate/delete/delete-overview)
 - [데이터 모델](./data-model): Unique Key가 UPDATE/DELETE를 지원하는 테이블 모델인 이유와 
Duplicate 및 Aggregate가 적합한 용도를 설명합니다.
 - [높은 동시성 포인트 쿼리](./high-concurrency-point-query): Unique Key Merge-on-Write 
테이블에서 KV 방식의 읽기에 사용할 수 있는 단축 실행 경로를 설명합니다.
-- [Binlog 테이블 스트림](./binlog-table-stream): 커밋된 행 단위 변경 사항이 다운스트림 소비자에게 어떻게 
제공되는지 설명합니다.
+- [변경 로그 / 테이블 스트림](./changelog-table-stream): 커밋된 행 단위 변경 사항이 다운스트림 소비자에게 어떻게 
제공되는지 설명합니다.
 - [Apache Doris 2.1.0: Merge-on-Write가 Unique Key의 기본값으로 
지정](https://doris.apache.org/blog/release-note-2.1.0/)
 - [Unique Key](./unique-key): SQL UPDATE/DELETE를 지원하는 테이블 모델입니다. 
Merge-on-Write는 쓰기 시점에 각 업서트를 처리합니다.
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/kafka-cdc-integration.mdx
 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/kafka-cdc-integration.mdx
index 9f350937c325..dbaf008a4999 100644
--- 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/kafka-cdc-integration.mdx
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/kafka-cdc-integration.mdx
@@ -131,6 +131,6 @@ PROPERTIES ("function_column.sequence_col" = "updated");
 - [Avro, Protobuf 및 Debezium용 Doris Kafka 
Connector](../connection-integration/data-integration/doris-kafka-connector)
 - [데이터 적재 트랜잭션: 2PC의 기반 모델](./load-transaction)
 - [데이터 업데이트 및 삭제: sequence column과 Merge-on-Write](./data-update-delete)
-- [Binlog Table Stream](./binlog-table-stream): Doris 행 변경 사항을 downstream 
consumer에 제공하는 역방향 change feed입니다.
+- [Changelog / Table Stream](./changelog-table-stream): Doris 행 변경 사항을 
downstream consumer에 제공하는 역방향 change feed입니다.
 - [Iceberg](./iceberg): 정제된 CDC 파이프라인의 일반적인 대상입니다. SQL을 통한 write-back으로 다른 엔진의 
reader도 동기화 상태를 유지합니다.
 - [Unique Key](./unique-key): CDC sink가 데이터를 적재하는 테이블 모델입니다. source의 
LSN/commit timestamp에 기반한 sequence column과 함께 사용하세요.
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/load-transaction.mdx
 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/load-transaction.mdx
index 7ce500dc3984..13679c5d73c0 100644
--- 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/load-transaction.mdx
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/load-transaction.mdx
@@ -107,7 +107,7 @@ Query OK, 2 rows affected
 - [Stream Load](./stream-load): 2PC 방식도 지원하는 동기식 HTTP 데이터 적재 방식입니다.
 - [Group Commit](./group-commit): 명시적인 `BEGIN ... COMMIT`이 필요하지 않은 빈번한 소량 삽입에 
적합한 도구입니다.
 - [Kafka 및 CDC 통합](./kafka-cdc-integration): Routine Load와 Flink CDC가 이 트랜잭션 
모델을 기반으로 exactly-once를 구현하는 방식을 설명합니다.
-- [Binlog Table Stream](./binlog-table-stream): 커밋된 행이 보이게 되면 생성되는 변경 피드입니다.
+- [Changelog / Table Stream](./changelog-table-stream): 커밋된 행이 보이게 되면 생성되는 변경 
피드입니다.
 - [트랜잭션, 격리 및 Label 
보존](https://doris.apache.org/docs/data-operate/transaction/)
 - [Stream Load 2PC 단계별 
안내](https://doris.apache.org/docs/data-operate/import/import-way/stream-load-manual/)
 - [Flink의 Doris 실시간 쓰기가 속도와 exactly-once를 모두 보장하는 
방식](https://doris.apache.org/blog/Flink-realtime-write/)
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx
 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx
index 36bb81da6744..96f304ee657d 100644
--- 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx
@@ -2,7 +2,7 @@
 {
     "title": "Lance 하이브리드 검색 성능 최적화 모범 사례",
     "language": "ko",
-    "description": "Apache Doris에서 Lance의 필터링된 벡터 검색과 전문 검색을 튜닝합니다. 인덱스 커버리지를 
맞추고, 세그먼트 크기를 조정하고, 공유 캐시 예산을 설정하고, 쿼리 프로파일을 진단합니다."
+    "description": "Apache Doris에서 Lance 벡터 및 BM25 SQL 푸시다운을 사용하고, 근사 검색의 의미와 
필터를 이해하며, 인덱스 커버리지, 세그먼트, 캐시, 프로파일을 튜닝합니다."
 }
 ---
 
@@ -12,6 +12,94 @@ Lance에서 벡터 검색이나 전문 검색에 스칼라 조건을 함께 사
 Lance Catalog는 실험적 기능이며 Apache Doris 4.2부터 지원됩니다. 먼저 [Lance 
Catalog](../catalogs/lance-catalog.mdx)에서 접근을 구성하고 리더/라이터 호환성 요구 사항을 확인하세요. 
Doris는 기존 Lance 인덱스를 읽습니다. 인덱스는 호환되는 Lance 도구로 구축하고 유지 관리해야 합니다. 최신 Lance SDK나 
업스트림 제안이 있다고 해서 사용 중인 Doris 빌드에 포함된 리더가 해당 기능을 지원하는 것은 아닙니다.
 :::
 
+## 일반 SQL에서 자동 검색 {#automatic-search}
+
+자동 Lance 검색이 포함된 Doris 4.2 빌드에서는 조건에 맞는 일반 SQL 쿼리가 명시적 TVF와 동일한 네이티브 검색 경로를 
사용할 수 있습니다. 이 기능은 TVF를 직접 호출하는 것과 별개이므로, `vector_search()`가 작동한다는 이유만으로 이전 빌드도 
자동 검색을 지원한다고 가정하지 마세요. 자동 검색을 위한 별도의 세션 스위치는 필요하지 않습니다.
+
+### 함수 매핑
+
+| SQL 표현식 | 필수 정렬 방향 | Lance 메트릭 및 SQL 결과 |
+|---|---|---|
+| 
[l2_distance_approximate](../../sql-manual/sql-functions/ai-functions/distance-functions/l2-distance-approximate.md)
 | `ASC` | `l2`; 네이티브 제곱 L2 거리 대신 유클리드 거리인 `CAST(sqrt(_distance) AS FLOAT)`를 
반환합니다. |
+| 
[inner_product_approximate](../../sql-manual/sql-functions/ai-functions/distance-functions/inner-product-approximate.md)
 | `DESC` | `dot`; 내적 유사도인 `1.0f - _distance`를 반환합니다. |
+| 
[cosine_distance_approximate](../../sql-manual/sql-functions/ai-functions/distance-functions/cosine-distance-approximate.md)
 | `ASC` | `cosine`; 네이티브 코사인 거리를 반환합니다. |
+| 
[cosine_similarity_approximate](../../sql-manual/sql-functions/ai-functions/distance-functions/cosine-similarity-approximate.md)
 | `DESC` | `cosine`; `1.0f - _distance`를 반환합니다. |
+| 
[hamming_distance_approximate](../../sql-manual/sql-functions/ai-functions/distance-functions/hamming-distance-approximate.md)
 | `ASC` | `hamming`; 서로 다른 비트의 개수를 반환합니다. |
+| `MATCH_ANY`, `MATCH_ALL` 또는 `MATCH_PHRASE`와 함께 사용하는 `score()` | `DESC` | 
Lance BM25; 각각 Match OR, Match AND 또는 Phrase입니다. |
+
+`cosine_distance()`, `cosine_similarity()`, 
[hamming_distance](../../sql-manual/sql-functions/ai-functions/distance-functions/hamming-distance.md)를
 비롯한 정확한 거리 및 유사도 함수는 계속 스칼라 함수로 실행됩니다. `l1_distance()`도 스칼라 함수로 실행됩니다. 번들로 
제공되는 Lance 벡터 검색 API는 L1 메트릭을 제공하지 않습니다.
+
+### 벡터 및 BM25 예제
+
+Catalog를 구성한 후 `lance_catalog.default.items`에 `id`, `category`, `content`, 네 
차원의 Float32 고정 크기 리스트인 `embedding`, 세 바이트의 UInt8 고정 크기 리스트인 `binary_embedding`이 
있다고 가정합니다. 인덱스를 통한 검색 가속이 필요하다면 Lance 도구로 호환되는 벡터 인덱스와 `content`에 커밋된 FTS 인덱스를 
구축하세요.
+
+```sql
+SELECT id, cosine_distance_approximate(embedding, [0.1,0.2,0.3,0.4]) AS 
distance
+FROM lance_catalog.default.items
+WHERE category = 'book'
+ORDER BY distance ASC LIMIT 10 OFFSET 5;
+
+SELECT id, cosine_similarity_approximate(embedding, [0.1,0.2,0.3,0.4]) AS 
similarity
+FROM lance_catalog.default.items
+ORDER BY similarity DESC LIMIT 10;
+
+SELECT id, hamming_distance_approximate(binary_embedding, [0,255,170]) AS 
distance
+FROM lance_catalog.default.items
+ORDER BY distance ASC LIMIT 10;
+
+SELECT id, score() AS relevance
+FROM lance_catalog.default.items
+WHERE content MATCH_ALL 'storage engine' AND category = 'book'
+ORDER BY relevance DESC LIMIT 10;
+```
+
+첫 번째 쿼리는 후보를 가지치기하기 전에 `category = 'book'`에 해당하는 범위에서 검색합니다. 각 분할은 오프셋 없이 후보 
15개를 요청하며, Doris가 후보를 병합한 뒤 최종 `OFFSET 5 LIMIT 10`을 적용합니다. 다른 쿼리들은 각각의 정렬 순서에 
따라 이웃 또는 BM25 일치 항목을 최대 10개 반환합니다. 인덱스를 사용하는 검색은 근사 방식일 수 있으며 요청한 행 수보다 적게 반환할 
수 있습니다. 기존의 호환 인덱스는 재사용하고, 인덱스가 적용되지 않은 데이터에는 기존 Flat Search 경로를 사용합니다. BM25에는 
기존 FTS 인덱스가 필요합니다.
+
+### 적용 조건과 대체 실행 경로
+
+- 쿼리에는 Lance Catalog 테이블 직접 스캔, 선택적 필터, 프로젝션, 하나의 검색 정렬 키와 양수 `LIMIT`을 사용하는 
Top-N이 있어야 합니다. JOIN/EXISTS, 보조 정렬 키, DISTINCT, 테이블 샘플링, 이동할 수 없는 프로젝션 표현식이 있으면 
이 재작성이 적용되지 않습니다.
+- 부동 소수점 메트릭에는 물리적 Float32 고정 크기 리스트 벡터가, Hamming에는 물리적 UInt8 고정 크기 리스트 벡터가 
필요합니다. 쿼리 벡터는 차원이 일치하는 상수 배열이어야 합니다. Float16/Float64, 다중 벡터 컬럼, 원소 값을 임의로 바꾸는 
캐스트는 자동으로 재작성되지 않습니다. UInt8은 Doris SMALLINT로 노출되며, 이를 Hamming 함수의 BIGINT 인수로 
확장하는 것은 안전합니다.
+- 지원되지 않는 잔여 조건, 반대 방향의 검색 정렬, 누락된 네이티브 메타데이터가 있거나 네이티브 벡터 또는 스키마 검증에 실패한 벡터 
쿼리는 스칼라 평가를 유지합니다. 재작성하려면 `LIMIT + OFFSET`이 네이티브 UINT32 후보 예산에 들어가야 합니다. 이 제한은 
일반 스칼라 SQL에는 적용되지 않습니다.
+- BM25에는 직접 참조하는 문자열 컬럼에 대한 지원되는 최상위 MATCH 조건 하나, 리터럴 쿼리, 인덱스에 저장된 분석기, 내림차순 
`score()`가 필요합니다. 나머지 스칼라 조건은 모두 푸시다운할 수 있어야 합니다. `score() > literal`과 `score() 
>= literal`은 잔여 하한 조건으로 지원되지만, 상한 조건과 그 밖의 점수 조건은 거부됩니다. 지원되지 않는 점수 쿼리 형태는 
`score()`를 조용히 스칼라 함수로 평가하는 대신 오류를 보고합니다.
+- 점수는 Lance에 저장된 분석기와 인덱스, 스냅샷 전체의 통계에서 나옵니다. 별도로 인덱싱한 Doris 내부 테이블의 점수와 수치적으로 
일치하지 않을 수 있습니다. 이 재작성에서는 퍼지 검색, 분석기 재정의, 여러 컬럼을 사용하는 `SEARCH()` 표현식을 사용할 수 
없습니다. 지원되는 다중 벡터 쿼리와 `nprobes`, `refine_factor`, `ef` 등의 튜닝에는 명시적 TVF를 사용하세요.
+
+### 네이티브 근사 검색의 의미
+
+`_approximate` 접미사를 사용하면 적용 조건에 맞는 Top-N 쿼리에 네이티브 Lance 후보 검색 방식이 적용됩니다. 재작성되지 
않으면 함수가 스칼라 커널로 실행됩니다. 모든 저장 행을 대상으로 빠짐없이 순위를 매기거나 스칼라 검증을 해야 한다면 근사 함수를 사용하지 
마세요.
+
+| 입력 | 스칼라 평가 | 적용 조건에 맞는 네이티브 검색 |
+|---|---|---|
+| 저장된 NULL 벡터 | 오류 | 후보에서 제외됩니다. |
+| NaN 거리를 생성하는 저장 벡터 | NaN을 반환할 수 있습니다. | 제외되므로 쿼리가 더 적은 행을 반환할 수 있습니다. |
+| NULL 벡터 원소 | 오류 | 지원되는 네이티브 입력 범위를 벗어납니다. 원소에 NULL이 없도록 하세요. |
+| 저장된 노름이 영인 코사인 벡터 | 거리 2, 유사도 0 | 정의되지 않은 거리 또는 NaN 네이티브 거리가 생성되면 제외됩니다. |
+| Float32 제곱 노름의 오버플로 또는 언더플로를 포함하여, 코사인 쿼리 노름이 영이거나 유한하지 않은 경우 | 스칼라 동작 | 자동 
재작성을 건너뜁니다. |
+| Hamming 입력 | 각 원소가 `[0,255]` 범위에 있는 정수 배열 | 물리적 UInt8 벡터와 유효한 바이트 쿼리. |
+
+네이티브 코사인 연산과 인덱스 추정치는 스칼라 결과와 다를 수 있습니다. Hamming은 서로 다른 바이트의 개수가 아니라 서로 다른 비트의 
개수를 셉니다. `hamming_distance([0,255,170], [255,0,85])`는 24를 반환합니다. Hamming은 암시적 
캐스트 전에 부동 소수점, decimal, LARGEINT 배열을 거부하고, 바이트 변환 전에 범위를 벗어난 값도 거부합니다. 정확한 함수는 
계속 스칼라 실행에 사용할 수 있습니다.
+
+### WHERE 사전 필터와 JOIN 경계
+
+Lance 테이블에서 완전히 푸시다운할 수 있는 조건은 검색 전에 동일한 고정 스냅샷을 대상으로 평가됩니다. Doris는 먼저 행 ID만 
읽는 스캔을 시도하고, 완성된 허용 목록을 해당 쿼리의 검색 리더들이 공유합니다. 목록이 비어 있으면 행을 선택하지 않습니다. ID가 
65,536개를 초과하면 Doris는 부분 목록을 버리고 완전한 네이티브 조건 사전 필터를 유지합니다. 임시 목록과 캐시된 목록의 용량은 모두 
쿼리 메모리 제한에 포함되며, 중단되거나 실패한 수집 결과는 캐시하지 않습니다. 이는 일반 스캔에서 JOIN Runtime Filter를 
푸시다운하는 것과 별개입니다.
+
+이 ACL 예제에서는 `internal.auth.allowed_items`에 `item_id`와 `principal_id`가 있다고 
가정합니다.
+
+```sql
+SELECT d.id,
+       l2_distance_approximate(d.embedding, [0.1,0.2,0.3,0.4]) AS distance
+FROM lance_catalog.default.items d
+WHERE EXISTS (
+    SELECT 1 FROM internal.auth.allowed_items a
+    WHERE a.item_id = d.id AND a.principal_id = 42
+)
+ORDER BY distance ASC
+LIMIT 10;
+```
+
+이 경우 조인, 스칼라 거리 평가, 전역 Top-N이 유지됩니다. 재작성은 ACL 세미 조인을 가로지르거나 비즈니스 ID를 네이티브 
Lance `_rowid`에 매핑하지 않습니다. ACL 필터링 전에 필터 없는 Top-K를 선택하면 권한이 있는 행 중 가장 가까운 행을 놓칠 
수 있습니다. 보조 정렬 키를 추가해도 자동 재작성이 적용되지 않습니다.
+
+해당 쿼리에 `EXPLAIN`을 사용하여 `externalSearchType=VECTOR`와 
`lanceMetric=l2|dot|cosine|hamming`, 또는 `externalSearchType=FULL_TEXT`를 확인하세요. 
`LanceRowIdPrefilterTime`, `LanceRowIdPrefilterRows`, 
`LanceRowIdPrefilterCacheHits`, `LanceRowIdPrefilterFallbacks`는 Doris 허용 목록 처리 
작업을 보고하며, 아래의 네이티브 행 ID 로더 메트릭과는 다릅니다. 이 규칙의 적용 범위를 벗어나지만 지원되는 쿼리 형태나 검색 튜닝에는 
명시적 TVF를 사용하세요. 재작성된 검색도 자체 적용 조건을 충족하면 기존의 두 단계 출력 읽기를 사용할 수 있습니다.
+
 ## 1. 후보 필터를 검색 내부에 배치하기 {#candidate-filters}
 
 정수형 `id`, 문자열 `category`, 문자열 `content`, 네 차원의 벡터 `embedding`을 포함하는 테이블이 구성되어 
있다면, 후보 생성에 영향을 주어야 하는 조건은 TVF의 `filter` 매개변수에 지정하세요. 벡터 인덱스는 차원과 거리 측정 방식이 
일치해야 하며, 텍스트 열에는 커밋된 FTS 인덱스가 있어야 합니다.
diff --git 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx
 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx
index 5d9397825a1a..d1c9bc620ca7 100644
--- 
a/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx
+++ 
b/i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx
@@ -2,7 +2,7 @@
 {
     "title": "Lance Catalog",
     "language": "ko",
-    "description": "Apache Doris Lance Catalog 가이드: Filesystem 또는 REST 
Namespace Catalog를 통해 Lance 데이터세트에 접근하고 병렬 읽기, 조건자 푸시다운, S3/Local TVF, 인덱스 조회, 
벡터 검색, 전문 검색을 활용합니다."
+    "description": "Apache Doris에서 Lance 데이터세트를 쿼리하는 방법: Catalog 구성, 네이티브 벡터 및 
BM25 검색 활용, 자동 SQL 푸시다운과 타입 호환성 이해."
 }
 ---
 
@@ -729,6 +729,8 @@ Lance 파일 TVF에는 다음과 같은 추가 제한이 있습니다.
 
 ## 벡터 검색 {#vector-search}
 
+Doris 4.2의 Lance 자동 검색 기능이 포함된 빌드에서는 조건에 맞는 일반 SQL도 네이티브 벡터 Top-N 및 MATCH/BM25 
검색을 사용할 수 있습니다. 다섯 가지 근사 함수, 메트릭 변환, 입력 의미 체계, JOIN/EXISTS 적용 범위는 [일반 SQL에서 자동 
검색](../best-practices/lance-hybrid-search.mdx#automatic-search)을 참조하세요. 아래 TVF는 
검색을 명시적으로 조정하거나 자동 재작성 범위 밖에서 지원되는 쿼리 형태를 사용할 때 계속 활용할 수 있는 인터페이스입니다.
+
 `vector_search()`는 Lance 테이블의 벡터 열에서 Top-K 검색을 수행하는 관계형 TVF입니다. 기존 Lance 벡터 
인덱스를 사용하거나 Flat Search를 수행할 수 있습니다.
 
 ### 구문 및 예제 {#syntax-and-example}
@@ -1116,7 +1118,7 @@ BE `/metrics` 엔드포인트는 
`doris_be_lance_session_index_cache_` 및 `dori
 
 Doris는 다음 조건이 모두 충족될 때만 두 단계 읽기를 사용합니다.
 
-1. 쿼리가 `vector_search()` 또는 `full_text_search()`로 Lance를 읽으며, 계획에 지연 구체화를 적용할 
수 있는 TopN이 포함되어 있습니다. 이 스위치는 현재 일반 Lance 테이블 스캔이나 Lance 파일 TVF에는 적용되지 않습니다.
+1. 쿼리가 `vector_search()` 또는 `full_text_search()`로 Lance를 읽으며, 계획에 지연 구체화를 적용할 
수 있는 TopN이 포함되어 있습니다. 이러한 검색 TVF로 재작성된 일반 SQL 쿼리도 적용 대상이 될 수 있습니다. 재작성되지 않은 스칼라 
테이블 스캔과 Lance 파일 TVF에는 적용되지 않습니다.
 2. Boolean 세션 변수 `enable_lance_lazy_materialization`이 기본값인 `true`입니다.
 3. 읽기를 미룰 수 있는 최상위 열이 하나 이상 있습니다. 최종 `SELECT` 프로젝션에서만 사용하는 열은 읽기를 미룰 수 있습니다. 
Post-filter, `ORDER BY` 또는 TopN 이전의 다른 표현식에서 사용하는 열은 단계 1에서 읽어야 합니다. 중첩 하위 열은 
현재 읽기를 미룰 수 없습니다.
 
diff --git 
a/translations/state/ko/pages/default/4.x/connection-integration/data-integration/dbine.json
 
b/translations/state/ko/pages/default/4.x/connection-integration/data-integration/dbine.json
new file mode 100644
index 000000000000..2ab2d90c0da0
--- /dev/null
+++ 
b/translations/state/ko/pages/default/4.x/connection-integration/data-integration/dbine.json
@@ -0,0 +1,68 @@
+{
+  "schemaVersion": 1,
+  "page": {
+    "pluginId": "default",
+    "version": "4.x",
+    "docId": "connection-integration/data-integration/dbine",
+    "locale": "ko",
+    "sourceLocale": "en",
+    "sourcePath": 
"versioned_docs/version-4.x/connection-integration/data-integration/dbine.md",
+    "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/dbine.md",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"1903e0d95cf99301ea0b47bb46bef4f6191f6db2d3f61578887b1143a2b6a74d",
+    "sourceTechnicalHash": 
"6303dc3d568ae9b47c6e057dda5f3491e90f1485e17872fe85c51292e170d4d2",
+    "targetHash": 
"8f5c04992c1bbcd5e8d84aefa1d094ba721e0fd46d8d88acaa4ca93795ebf7f0",
+    "reviewStatus": "machine",
+    "ownership": "machine",
+    "translatedAt": "2026-10-24T05:13:17.581Z",
+    "glossaryVersion": "1",
+    "generation": {
+      "policy": "whole-document-v1",
+      "mode": "full",
+      "reason": "no-previous-translation",
+      "attempts": 3,
+      "acceptedWithWarnings": true,
+      "sourceHash": 
"1903e0d95cf99301ea0b47bb46bef4f6191f6db2d3f61578887b1143a2b6a74d",
+      "targetHash": 
"8f5c04992c1bbcd5e8d84aefa1d094ba721e0fd46d8d88acaa4ca93795ebf7f0",
+      "warnings": [
+        {
+          "check": "protected-content",
+          "message": "Restore protected source content:\nprotected node 21: 
expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+        }
+      ],
+      "history": [
+        {
+          "attempt": 1,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
21: expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+            },
+            {
+              "check": "glossary",
+              "message": "Preserve product term: Catalog"
+            }
+          ]
+        },
+        {
+          "attempt": 2,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
21: expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+            }
+          ]
+        },
+        {
+          "attempt": 3,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
21: expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+            }
+          ]
+        }
+      ]
+    }
+  }
+}
diff --git 
a/translations/state/ko/pages/default/4.x/connection-integration/data-integration/intro.json
 
b/translations/state/ko/pages/default/4.x/connection-integration/data-integration/intro.json
index 28e8e1829870..786ba6316694 100644
--- 
a/translations/state/ko/pages/default/4.x/connection-integration/data-integration/intro.json
+++ 
b/translations/state/ko/pages/default/4.x/connection-integration/data-integration/intro.json
@@ -8,23 +8,29 @@
     "sourceLocale": "en",
     "sourcePath": 
"versioned_docs/version-4.x/connection-integration/data-integration/intro.mdx",
     "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/version-4.x/connection-integration/data-integration/intro.mdx",
-    "sourceCommit": "f1464d3fb0dd6007d36104a970c3bc7db282d822",
-    "sourceHash": 
"a253e43f9be756bc13c3d5d94ced78f0224aa50adee9466596bbbe3db543d4c7",
-    "sourceTechnicalHash": 
"90aba615687425b1b86ecad8bc1b03531b2a4e0f4f4f31689ca68fa3c5ee7482",
-    "targetHash": 
"7528bc4872d5fcca34d8f2a18fa8c80e80fc036dc5d935e7efe4ee8e24746b73",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"ba91960ab0c4f1d90b37e57e7ef46b570fa31c4bcbf67f47d4db6e79d1c068ed",
+    "sourceTechnicalHash": 
"a3e98838cc58d3eaeddffcb1b3a909059cfa67b724f58eeff909ca404c9aaf9a",
+    "targetHash": 
"64b9804e76289541cc848224833a6f23c41dc8e5c0d6b5c920dffc24b0f7543e",
     "reviewStatus": "machine",
     "ownership": "machine",
-    "translatedAt": "2026-10-19T08:56:32.648Z",
+    "translatedAt": "2026-10-24T05:09:58.326Z",
     "glossaryVersion": "1",
     "generation": {
       "policy": "whole-document-v1",
-      "mode": "full",
-      "reason": "local-t09-batch",
+      "previousSourceHash": 
"a253e43f9be756bc13c3d5d94ced78f0224aa50adee9466596bbbe3db543d4c7",
+      "previousTargetHash": 
"7528bc4872d5fcca34d8f2a18fa8c80e80fc036dc5d935e7efe4ee8e24746b73",
+      "mode": "incremental",
+      "reason": "source-change-within-30-percent",
+      "sourceChange": {
+        "changedLines": 6,
+        "totalLines": 226,
+        "ratio": 0.02654867256637168
+      },
       "attempts": 1,
-      "modelCalls": 1,
       "acceptedWithWarnings": false,
-      "sourceHash": 
"a253e43f9be756bc13c3d5d94ced78f0224aa50adee9466596bbbe3db543d4c7",
-      "targetHash": 
"7528bc4872d5fcca34d8f2a18fa8c80e80fc036dc5d935e7efe4ee8e24746b73",
+      "sourceHash": 
"ba91960ab0c4f1d90b37e57e7ef46b570fa31c4bcbf67f47d4db6e79d1c068ed",
+      "targetHash": 
"64b9804e76289541cc848224833a6f23c41dc8e5c0d6b5c920dffc24b0f7543e",
       "warnings": [],
       "history": [
         {
diff --git 
a/translations/state/ko/pages/default/4.x/key-features/data-update-delete.json 
b/translations/state/ko/pages/default/4.x/key-features/data-update-delete.json
index 333a0d9feb56..0337a98a4cd6 100644
--- 
a/translations/state/ko/pages/default/4.x/key-features/data-update-delete.json
+++ 
b/translations/state/ko/pages/default/4.x/key-features/data-update-delete.json
@@ -8,42 +8,36 @@
     "sourceLocale": "en",
     "sourcePath": 
"versioned_docs/version-4.x/key-features/data-update-delete.mdx",
     "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/data-update-delete.mdx",
-    "sourceCommit": "f1464d3fb0dd6007d36104a970c3bc7db282d822",
-    "sourceHash": 
"7afc3aa9b3f0aea213dc376223b53952733cc6db2342a2a9d86fb9e0df83caf5",
-    "sourceTechnicalHash": 
"5abc6a71cdfed581407e259fbabfdced6949ebee0e537b241fe4b2b675263196",
-    "targetHash": 
"c4ccb336a5beffb155e2151aebc47faac682d11717cf975132a29d62bbf04873",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"c0876cbe06f458b8bae3bc3b307afbe1d79cd7911eea3f90d7bb11f030ea3948",
+    "sourceTechnicalHash": 
"ad90e40a2d7b104d118d1807d4b3160ae578a955a9d2f899effd2f4a0a09ce37",
+    "targetHash": 
"e1da7c43740261fa5c86cf9b979b2d48430aba3243f65dda7fe7fb1ad2b247c9",
     "reviewStatus": "machine",
     "ownership": "machine",
-    "translatedAt": "2026-10-19T09:44:15.022Z",
+    "translatedAt": "2026-10-24T05:10:05.824Z",
     "glossaryVersion": "1",
     "generation": {
       "policy": "whole-document-v1",
-      "mode": "copy",
-      "reason": "cross-version-copy",
+      "previousSourceHash": 
"7afc3aa9b3f0aea213dc376223b53952733cc6db2342a2a9d86fb9e0df83caf5",
+      "previousTargetHash": 
"c4ccb336a5beffb155e2151aebc47faac682d11717cf975132a29d62bbf04873",
+      "mode": "incremental",
+      "reason": "source-change-within-30-percent",
+      "sourceChange": {
+        "changedLines": 1,
+        "totalLines": 96,
+        "ratio": 0.010416666666666666
+      },
       "attempts": 1,
-      "modelCalls": 0,
       "acceptedWithWarnings": false,
-      "sourceHash": 
"7afc3aa9b3f0aea213dc376223b53952733cc6db2342a2a9d86fb9e0df83caf5",
-      "targetHash": 
"c4ccb336a5beffb155e2151aebc47faac682d11717cf975132a29d62bbf04873",
+      "sourceHash": 
"c0876cbe06f458b8bae3bc3b307afbe1d79cd7911eea3f90d7bb11f030ea3948",
+      "targetHash": 
"e1da7c43740261fa5c86cf9b979b2d48430aba3243f65dda7fe7fb1ad2b247c9",
       "warnings": [],
       "history": [
         {
           "attempt": 1,
-          "operation": "copy",
           "issues": []
         }
-      ],
-      "reusedFrom": {
-        "origin": "merged",
-        "version": "current",
-        "docId": "key-features/data-update-delete",
-        "sourcePath": "docs/key-features/data-update-delete.mdx",
-        "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/current/key-features/data-update-delete.mdx",
-        "sourceCommit": "fc42f75f28a60e348a61a8c08f63ed48d4db6be6",
-        "sourceHash": 
"7afc3aa9b3f0aea213dc376223b53952733cc6db2342a2a9d86fb9e0df83caf5",
-        "targetHash": 
"c4ccb336a5beffb155e2151aebc47faac682d11717cf975132a29d62bbf04873",
-        "commit": "f1464d3fb0dd6007d36104a970c3bc7db282d822"
-      }
+      ]
     }
   }
 }
diff --git 
a/translations/state/ko/pages/default/4.x/key-features/kafka-cdc-integration.json
 
b/translations/state/ko/pages/default/4.x/key-features/kafka-cdc-integration.json
index 45882940bdf5..be86e5ba7c7d 100644
--- 
a/translations/state/ko/pages/default/4.x/key-features/kafka-cdc-integration.json
+++ 
b/translations/state/ko/pages/default/4.x/key-features/kafka-cdc-integration.json
@@ -8,23 +8,29 @@
     "sourceLocale": "en",
     "sourcePath": 
"versioned_docs/version-4.x/key-features/kafka-cdc-integration.mdx",
     "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/kafka-cdc-integration.mdx",
-    "sourceCommit": "f1464d3fb0dd6007d36104a970c3bc7db282d822",
-    "sourceHash": 
"69abf2cf2aceadda27f24f6dfd03c0017f98e2c307b1a2cfc4f2b1926ef3d480",
-    "sourceTechnicalHash": 
"1668343057435ca08c0a3bf44e1a35365c8a21eeef40c4d86901eea585b8e876",
-    "targetHash": 
"8315aee590ff1f99d97c9441b10cc57ccf34e508326a6e59aaf9aa72061f91f2",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"c9643bb04475a89d34350e3dae9b8b4defeb47b573662ad2b557ec632799dc57",
+    "sourceTechnicalHash": 
"7e7234bd2f1e03cd61c87dd1659e32b3459974fd3c428ea8d4465f8d76b07ecd",
+    "targetHash": 
"46a289726fd5a80663fd7901776a7b1e11d1e411c750b779c8ce4dfc0dbfa1c4",
     "reviewStatus": "machine",
     "ownership": "machine",
-    "translatedAt": "2026-10-19T09:48:35.971Z",
+    "translatedAt": "2026-10-24T05:10:12.662Z",
     "glossaryVersion": "1",
     "generation": {
       "policy": "whole-document-v1",
-      "mode": "full",
-      "reason": "local-t09-batch",
+      "previousSourceHash": 
"69abf2cf2aceadda27f24f6dfd03c0017f98e2c307b1a2cfc4f2b1926ef3d480",
+      "previousTargetHash": 
"8315aee590ff1f99d97c9441b10cc57ccf34e508326a6e59aaf9aa72061f91f2",
+      "mode": "incremental",
+      "reason": "source-change-within-30-percent",
+      "sourceChange": {
+        "changedLines": 1,
+        "totalLines": 105,
+        "ratio": 0.009523809523809525
+      },
       "attempts": 1,
-      "modelCalls": 1,
       "acceptedWithWarnings": false,
-      "sourceHash": 
"69abf2cf2aceadda27f24f6dfd03c0017f98e2c307b1a2cfc4f2b1926ef3d480",
-      "targetHash": 
"8315aee590ff1f99d97c9441b10cc57ccf34e508326a6e59aaf9aa72061f91f2",
+      "sourceHash": 
"c9643bb04475a89d34350e3dae9b8b4defeb47b573662ad2b557ec632799dc57",
+      "targetHash": 
"46a289726fd5a80663fd7901776a7b1e11d1e411c750b779c8ce4dfc0dbfa1c4",
       "warnings": [],
       "history": [
         {
diff --git 
a/translations/state/ko/pages/default/4.x/key-features/load-transaction.json 
b/translations/state/ko/pages/default/4.x/key-features/load-transaction.json
index a21cec4a4b18..97dd6355435d 100644
--- a/translations/state/ko/pages/default/4.x/key-features/load-transaction.json
+++ b/translations/state/ko/pages/default/4.x/key-features/load-transaction.json
@@ -8,42 +8,36 @@
     "sourceLocale": "en",
     "sourcePath": 
"versioned_docs/version-4.x/key-features/load-transaction.mdx",
     "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/version-4.x/key-features/load-transaction.mdx",
-    "sourceCommit": "f1464d3fb0dd6007d36104a970c3bc7db282d822",
-    "sourceHash": 
"7b5601c86d1ce2a2bfc3c2290bc2854fc642599a92c4101c161a5d5628e41d26",
-    "sourceTechnicalHash": 
"71023aabc3388ec189105bbb98fae42a33dde9f03512efe2a2e80fb2531f8a26",
-    "targetHash": 
"56761eafdd31a6b72b9c50866132424c12795b186e9a8b4840dc8f097131710d",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"8c21786c3e63c05e675f946208bb336cddbaaa33af25423cd8e168828be424bf",
+    "sourceTechnicalHash": 
"46ad6af05e7e430f36a653b754db1c77778ef7e032896af0598c6d1c5f3ec2fb",
+    "targetHash": 
"764253d9634ec9d61dafd30a95610e821bc2fb02a14ed15a7454cefb47dad8cc",
     "reviewStatus": "machine",
     "ownership": "machine",
-    "translatedAt": "2026-10-19T09:45:44.438Z",
+    "translatedAt": "2026-10-24T05:10:19.103Z",
     "glossaryVersion": "1",
     "generation": {
       "policy": "whole-document-v1",
-      "mode": "copy",
-      "reason": "cross-version-copy",
+      "previousSourceHash": 
"7b5601c86d1ce2a2bfc3c2290bc2854fc642599a92c4101c161a5d5628e41d26",
+      "previousTargetHash": 
"56761eafdd31a6b72b9c50866132424c12795b186e9a8b4840dc8f097131710d",
+      "mode": "incremental",
+      "reason": "source-change-within-30-percent",
+      "sourceChange": {
+        "changedLines": 1,
+        "totalLines": 85,
+        "ratio": 0.011764705882352941
+      },
       "attempts": 1,
-      "modelCalls": 0,
       "acceptedWithWarnings": false,
-      "sourceHash": 
"7b5601c86d1ce2a2bfc3c2290bc2854fc642599a92c4101c161a5d5628e41d26",
-      "targetHash": 
"56761eafdd31a6b72b9c50866132424c12795b186e9a8b4840dc8f097131710d",
+      "sourceHash": 
"8c21786c3e63c05e675f946208bb336cddbaaa33af25423cd8e168828be424bf",
+      "targetHash": 
"764253d9634ec9d61dafd30a95610e821bc2fb02a14ed15a7454cefb47dad8cc",
       "warnings": [],
       "history": [
         {
           "attempt": 1,
-          "operation": "copy",
           "issues": []
         }
-      ],
-      "reusedFrom": {
-        "origin": "merged",
-        "version": "current",
-        "docId": "key-features/load-transaction",
-        "sourcePath": "docs/key-features/load-transaction.mdx",
-        "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/current/key-features/load-transaction.mdx",
-        "sourceCommit": "fc42f75f28a60e348a61a8c08f63ed48d4db6be6",
-        "sourceHash": 
"7b5601c86d1ce2a2bfc3c2290bc2854fc642599a92c4101c161a5d5628e41d26",
-        "targetHash": 
"56761eafdd31a6b72b9c50866132424c12795b186e9a8b4840dc8f097131710d",
-        "commit": "f1464d3fb0dd6007d36104a970c3bc7db282d822"
-      }
+      ]
     }
   }
 }
diff --git 
a/translations/state/ko/pages/default/4.x/lakehouse/best-practices/lance-hybrid-search.json
 
b/translations/state/ko/pages/default/4.x/lakehouse/best-practices/lance-hybrid-search.json
index 2384b7515ce2..75811935903d 100644
--- 
a/translations/state/ko/pages/default/4.x/lakehouse/best-practices/lance-hybrid-search.json
+++ 
b/translations/state/ko/pages/default/4.x/lakehouse/best-practices/lance-hybrid-search.json
@@ -8,28 +8,62 @@
     "sourceLocale": "en",
     "sourcePath": 
"versioned_docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx",
     "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/best-practices/lance-hybrid-search.mdx",
-    "sourceCommit": "f1464d3fb0dd6007d36104a970c3bc7db282d822",
-    "sourceHash": 
"666e0b3238d9b2c2fb7979a45f1d5be200e3a493f3149b7412cd5361a7d92bf3",
-    "sourceTechnicalHash": 
"3f05cc51c538369f5d60fe1dfc25e6d30d7e027759d221c3bb25664d9257b9ac",
-    "targetHash": 
"16c79803b941a367bcb0454e7a2b311e14c66f2e2c071968e93c75dc241a3141",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"051522d5a18a979d89bb4b76192f2f12aaebe05f39f9a1f6101e274c03412a04",
+    "sourceTechnicalHash": 
"651cdfd11c3ec404925c24990eeb1227c0728bb66130a28120d7a7119d7bd88e",
+    "targetHash": 
"751f36184105467ee71b87ccd822a41616939c67a27c8f616053141e46d1d181",
     "reviewStatus": "machine",
     "ownership": "machine",
-    "translatedAt": "2026-10-19T10:22:56.679Z",
+    "translatedAt": "2026-10-24T05:11:54.803Z",
     "glossaryVersion": "1",
     "generation": {
       "policy": "whole-document-v1",
-      "mode": "full",
-      "reason": "local-t09-batch",
-      "attempts": 1,
-      "modelCalls": 1,
-      "acceptedWithWarnings": false,
-      "sourceHash": 
"666e0b3238d9b2c2fb7979a45f1d5be200e3a493f3149b7412cd5361a7d92bf3",
-      "targetHash": 
"16c79803b941a367bcb0454e7a2b311e14c66f2e2c071968e93c75dc241a3141",
-      "warnings": [],
+      "previousSourceHash": 
"666e0b3238d9b2c2fb7979a45f1d5be200e3a493f3149b7412cd5361a7d92bf3",
+      "previousTargetHash": 
"16c79803b941a367bcb0454e7a2b311e14c66f2e2c071968e93c75dc241a3141",
+      "mode": "incremental",
+      "reason": "source-change-within-30-percent",
+      "sourceChange": {
+        "changedLines": 65,
+        "totalLines": 218,
+        "ratio": 0.2981651376146789
+      },
+      "attempts": 3,
+      "acceptedWithWarnings": true,
+      "sourceHash": 
"051522d5a18a979d89bb4b76192f2f12aaebe05f39f9a1f6101e274c03412a04",
+      "targetHash": 
"751f36184105467ee71b87ccd822a41616939c67a27c8f616053141e46d1d181",
+      "warnings": [
+        {
+          "check": "protected-content",
+          "message": "Restore protected source content:\nprotected node 21: 
expected [\"inlineCode\",null,null,\"score()\"]; received 
[\"inlineCode\",null,null,\"MATCH_ANY\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"MATCH_ANY\"]; received 
[\"inlineCode\",null,null,\"MATCH_ALL\"]\nprotected node 23: expected 
[\"inlineCode\",null,null,\"MATCH_ALL\"]; received 
[\"inlineCode\",null,null,\"MATCH_PHRASE\"]"
+        }
+      ],
       "history": [
         {
           "attempt": 1,
-          "issues": []
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nnumeric values: 
expected 
[\"0\",\"1\",\"1\",\"1\",\"1\",\"10\",\"15\",\"16\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"20\",\"20\",\"20\",\"24\",\"25\",\"25\",\"25\",\"25\",\"25\",\"25\",\"3\",\"32\",\"32\",\"32\",\"32\",\"4\",\"4.2\",\"4.2\",\"5\",\"50\",\"6\",\"64\",\"65536\",\"8\",\"8\",\"8\",\"8\",\"95\",\"95\"];
 received 
[\"0\",\"0\",\"0\",\"0\",\"1\",\"1\",\"1\",\"1\",\"10\",\"15\",\"16\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\
 [...]
+            }
+          ]
+        },
+        {
+          "attempt": 2,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nnumeric values: 
expected 
[\"0\",\"1\",\"1\",\"1\",\"1\",\"10\",\"15\",\"16\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\"20\",\"20\",\"20\",\"24\",\"25\",\"25\",\"25\",\"25\",\"25\",\"25\",\"3\",\"32\",\"32\",\"32\",\"32\",\"4\",\"4.2\",\"4.2\",\"5\",\"50\",\"6\",\"64\",\"65536\",\"8\",\"8\",\"8\",\"8\",\"95\",\"95\"];
 received 
[\"0\",\"0\",\"0\",\"0\",\"1\",\"1\",\"1\",\"1\",\"10\",\"15\",\"16\",\"2\",\"2\",\"2\",\"2\",\"2\",\"2\",\
 [...]
+            }
+          ]
+        },
+        {
+          "attempt": 3,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
21: expected [\"inlineCode\",null,null,\"score()\"]; received 
[\"inlineCode\",null,null,\"MATCH_ANY\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"MATCH_ANY\"]; received 
[\"inlineCode\",null,null,\"MATCH_ALL\"]\nprotected node 23: expected 
[\"inlineCode\",null,null,\"MATCH_ALL\"]; received 
[\"inlineCode\",null,null,\"MATCH_PHRASE\"]"
+            }
+          ]
         }
       ]
     }
diff --git 
a/translations/state/ko/pages/default/4.x/lakehouse/catalogs/lance-catalog.json 
b/translations/state/ko/pages/default/4.x/lakehouse/catalogs/lance-catalog.json
index fd1fa1d85bb7..f9eddb197a6b 100644
--- 
a/translations/state/ko/pages/default/4.x/lakehouse/catalogs/lance-catalog.json
+++ 
b/translations/state/ko/pages/default/4.x/lakehouse/catalogs/lance-catalog.json
@@ -8,29 +8,29 @@
     "sourceLocale": "en",
     "sourcePath": 
"versioned_docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx",
     "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/version-4.x/lakehouse/catalogs/lance-catalog.mdx",
-    "sourceCommit": "82ccae858254f24b1b3a85f181ec289e386d33ae",
-    "sourceHash": 
"ae97758590a3ebef7e47e0c7ef5b3f2cf30ff947202d2337bbf4ae8e98f05ede",
-    "sourceTechnicalHash": 
"f9913936969f7c920d99e841b1f2dcd823a0ad23297624641a89b3a8b2e18c3b",
-    "targetHash": 
"8b74b97a2ad1d46a669e07b7f5ded7631c17f6ec20f851249cce4f20fd567a53",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"d9b0a7a5ad48c44647d7a354481c2c53a987a56c9dbdb7687c85b00db3afaac2",
+    "sourceTechnicalHash": 
"3e8a94281fc61d1a48124d117c1892dcc4224c4ab2bd9d72948fae871ab2f50b",
+    "targetHash": 
"ef069b6ff1c689c444c1fd778164985c5a21213fa8e21d681675b503f61a69da",
     "reviewStatus": "machine",
     "ownership": "machine",
-    "translatedAt": "2026-10-20T20:43:13.420Z",
+    "translatedAt": "2026-10-24T05:12:10.932Z",
     "glossaryVersion": "1",
     "generation": {
       "policy": "whole-document-v1",
-      "previousSourceHash": 
"0170b6ca44943ddfd32b4628593ec69788791b2ed276a429b258ed80f5a22fdc",
-      "previousTargetHash": 
"a1b29ef8e224ab84b3739f1402b239073d82713cf28043cc3c3b0021ff433a4d",
+      "previousSourceHash": 
"ae97758590a3ebef7e47e0c7ef5b3f2cf30ff947202d2337bbf4ae8e98f05ede",
+      "previousTargetHash": 
"8b74b97a2ad1d46a669e07b7f5ded7631c17f6ec20f851249cce4f20fd567a53",
       "mode": "incremental",
       "reason": "source-change-within-30-percent",
       "sourceChange": {
-        "changedLines": 50,
-        "totalLines": 1056,
-        "ratio": 0.04734848484848485
+        "changedLines": 3,
+        "totalLines": 1008,
+        "ratio": 0.002976190476190476
       },
       "attempts": 1,
       "acceptedWithWarnings": false,
-      "sourceHash": 
"ae97758590a3ebef7e47e0c7ef5b3f2cf30ff947202d2337bbf4ae8e98f05ede",
-      "targetHash": 
"8b74b97a2ad1d46a669e07b7f5ded7631c17f6ec20f851249cce4f20fd567a53",
+      "sourceHash": 
"d9b0a7a5ad48c44647d7a354481c2c53a987a56c9dbdb7687c85b00db3afaac2",
+      "targetHash": 
"ef069b6ff1c689c444c1fd778164985c5a21213fa8e21d681675b503f61a69da",
       "warnings": [],
       "history": [
         {
diff --git 
a/translations/state/ko/pages/default/current/connection-integration/data-integration/dbine.json
 
b/translations/state/ko/pages/default/current/connection-integration/data-integration/dbine.json
new file mode 100644
index 000000000000..2cf5d85e6223
--- /dev/null
+++ 
b/translations/state/ko/pages/default/current/connection-integration/data-integration/dbine.json
@@ -0,0 +1,68 @@
+{
+  "schemaVersion": 1,
+  "page": {
+    "pluginId": "default",
+    "version": "current",
+    "docId": "connection-integration/data-integration/dbine",
+    "locale": "ko",
+    "sourceLocale": "en",
+    "sourcePath": "docs/connection-integration/data-integration/dbine.md",
+    "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/current/connection-integration/data-integration/dbine.md",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"1903e0d95cf99301ea0b47bb46bef4f6191f6db2d3f61578887b1143a2b6a74d",
+    "sourceTechnicalHash": 
"6303dc3d568ae9b47c6e057dda5f3491e90f1485e17872fe85c51292e170d4d2",
+    "targetHash": 
"8f5c04992c1bbcd5e8d84aefa1d094ba721e0fd46d8d88acaa4ca93795ebf7f0",
+    "reviewStatus": "machine",
+    "ownership": "machine",
+    "translatedAt": "2026-10-24T05:13:17.581Z",
+    "glossaryVersion": "1",
+    "generation": {
+      "policy": "whole-document-v1",
+      "mode": "full",
+      "reason": "no-previous-translation",
+      "attempts": 3,
+      "acceptedWithWarnings": true,
+      "sourceHash": 
"1903e0d95cf99301ea0b47bb46bef4f6191f6db2d3f61578887b1143a2b6a74d",
+      "targetHash": 
"8f5c04992c1bbcd5e8d84aefa1d094ba721e0fd46d8d88acaa4ca93795ebf7f0",
+      "warnings": [
+        {
+          "check": "protected-content",
+          "message": "Restore protected source content:\nprotected node 21: 
expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+        }
+      ],
+      "history": [
+        {
+          "attempt": 1,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
21: expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+            },
+            {
+              "check": "glossary",
+              "message": "Preserve product term: Catalog"
+            }
+          ]
+        },
+        {
+          "attempt": 2,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
21: expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+            }
+          ]
+        },
+        {
+          "attempt": 3,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
21: expected [\"inlineCode\",null,null,\"5.7.99\"]; received 
[\"inlineCode\",null,null,\"version()\"]\nprotected node 22: expected 
[\"inlineCode\",null,null,\"version()\"]; received 
[\"inlineCode\",null,null,\"5.7.99\"]"
+            }
+          ]
+        }
+      ]
+    }
+  }
+}
diff --git 
a/translations/state/ko/pages/default/current/data-operate/incremental/changelog.json
 
b/translations/state/ko/pages/default/current/data-operate/incremental/changelog.json
new file mode 100644
index 000000000000..cbff9014cf95
--- /dev/null
+++ 
b/translations/state/ko/pages/default/current/data-operate/incremental/changelog.json
@@ -0,0 +1,64 @@
+{
+  "schemaVersion": 1,
+  "page": {
+    "pluginId": "default",
+    "version": "current",
+    "docId": "data-operate/incremental/changelog",
+    "locale": "ko",
+    "sourceLocale": "en",
+    "sourcePath": "docs/data-operate/incremental/changelog.md",
+    "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/current/data-operate/incremental/changelog.md",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"bf1fe9c08aa2a9e2fce782be2f5f9c41c7f2d31dab6868dc94ee8b11a6a5287d",
+    "sourceTechnicalHash": 
"61ad6350cd1177b83dcb2e78b4fbfc29c42796e8af06ddcb58da7b3dda11c041",
+    "targetHash": 
"886e87aa9ef75899127a0090ebbdf52654d4c5a598a4470bb553d486edf06669",
+    "reviewStatus": "machine",
+    "ownership": "machine",
+    "translatedAt": "2026-10-24T05:17:22.874Z",
+    "glossaryVersion": "1",
+    "generation": {
+      "policy": "whole-document-v1",
+      "mode": "full",
+      "reason": "no-previous-translation",
+      "attempts": 3,
+      "acceptedWithWarnings": true,
+      "sourceHash": 
"bf1fe9c08aa2a9e2fce782be2f5f9c41c7f2d31dab6868dc94ee8b11a6a5287d",
+      "targetHash": 
"886e87aa9ef75899127a0090ebbdf52654d4c5a598a4470bb553d486edf06669",
+      "warnings": [
+        {
+          "check": "protected-content",
+          "message": "Restore protected source content:\nprotected node 15: 
expected [\"inlineCode\",null,null,\"enable_feature_changelog = true\"]; 
received [\"inlineCode\",null,null,\"fe.conf\"]\nprotected node 16: expected 
[\"inlineCode\",null,null,\"fe.conf\"]; received 
[\"inlineCode\",null,null,\"enable_feature_changelog = true\"]\nprotected node 
18: expected [\"inlineCode\",null,null,\"enable_feature_changelog = true\"]; 
received [\"inlineCode\",null,null,\"be.conf\"]"
+        }
+      ],
+      "history": [
+        {
+          "attempt": 1,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nnumeric values: 
expected [\"26.4.0\",\"30\",\"5.0.0\",\"5.0.0\",\"5.0.0\"]; received 
[\"26.4.0\",\"30\",\"5.0.0\",\"5.0.0\",\"5.0.0\",\"7\"]\nprotected node 1: 
expected [\"html\",null,null,\"<!-- Knowledge type: Feature description + 
Parameter reference -->\"]; received [\"html\",null,null,\"<!-- 지식 유형: 기능 설명 + 
매개변수 참조 -->\"]\nprotected node 2: expected [\"html\",null,null,\"<!-- Use 
cases: Enabling row-level change recording o [...]
+            }
+          ]
+        },
+        {
+          "attempt": 2,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
15: expected [\"inlineCode\",null,null,\"enable_feature_changelog = true\"]; 
received [\"inlineCode\",null,null,\"fe.conf\"]\nprotected node 16: expected 
[\"inlineCode\",null,null,\"fe.conf\"]; received 
[\"inlineCode\",null,null,\"enable_feature_changelog = true\"]\nprotected node 
18: expected [\"inlineCode\",null,null,\"enable_feature_changelog = true\"]; 
received [\"inlineCode\",null,null,\"be.conf\"]"
+            }
+          ]
+        },
+        {
+          "attempt": 3,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nprotected node 
15: expected [\"inlineCode\",null,null,\"enable_feature_changelog = true\"]; 
received [\"inlineCode\",null,null,\"fe.conf\"]\nprotected node 16: expected 
[\"inlineCode\",null,null,\"fe.conf\"]; received 
[\"inlineCode\",null,null,\"enable_feature_changelog = true\"]\nprotected node 
18: expected [\"inlineCode\",null,null,\"enable_feature_changelog = true\"]; 
received [\"inlineCode\",null,null,\"be.conf\"]"
+            }
+          ]
+        }
+      ]
+    }
+  }
+}
diff --git 
a/translations/state/ko/pages/default/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.json
 
b/translations/state/ko/pages/default/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.json
index 22e29cc0b568..4ad6ba85344f 100644
--- 
a/translations/state/ko/pages/default/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.json
+++ 
b/translations/state/ko/pages/default/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.json
@@ -8,27 +8,42 @@
     "sourceLocale": "en",
     "sourcePath": 
"docs/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md",
     "targetPath": 
"i18n/ko/docusaurus-plugin-content-docs/current/sql-manual/sql-statements/table-and-view/table/CREATE-TABLE.md",
-    "sourceCommit": "f1464d3fb0dd6007d36104a970c3bc7db282d822",
-    "sourceHash": 
"417ff10f91e7d3d4524feb55afad4bd81f7f3163fd268fd45e79fc3c55cb288d",
-    "sourceTechnicalHash": 
"f0b426889805ba7ca7075a4e8592fba6dabee19da72e07efc472d4d06e2e31e1",
-    "targetHash": 
"079bfe68e03a98a4507312feef719854d1c6adcf6a01564b2ac3241d7a7cd76d",
+    "sourceCommit": "795aeb76a468b06fb12fd8f218fa33c31d76b63c",
+    "sourceHash": 
"5338a79c446d99b27f1c4f2689f7cdabababbd71c99016093300154d574dd6bd",
+    "sourceTechnicalHash": 
"d2aef39f871b55f4025d471f1b620f1ff1a7edadc19bd02a2fdb965f1a8ab6cb",
+    "targetHash": 
"2c7bf43fe98fd8005d44a9cc58fe02ec5e520f508c87f16d664b1ff657f722cb",
     "reviewStatus": "machine",
     "ownership": "machine",
-    "translatedAt": "2026-10-19T07:51:16.461Z",
+    "translatedAt": "2026-10-24T05:09:49.712Z",
     "glossaryVersion": "1",
     "generation": {
       "policy": "whole-document-v1",
-      "mode": "full",
-      "reason": "local-t09-batch",
-      "attempts": 1,
-      "modelCalls": 1,
+      "previousSourceHash": 
"417ff10f91e7d3d4524feb55afad4bd81f7f3163fd268fd45e79fc3c55cb288d",
+      "previousTargetHash": 
"079bfe68e03a98a4507312feef719854d1c6adcf6a01564b2ac3241d7a7cd76d",
+      "mode": "incremental",
+      "reason": "source-change-within-30-percent",
+      "sourceChange": {
+        "changedLines": 3,
+        "totalLines": 599,
+        "ratio": 0.005008347245409015
+      },
+      "attempts": 2,
       "acceptedWithWarnings": false,
-      "sourceHash": 
"417ff10f91e7d3d4524feb55afad4bd81f7f3163fd268fd45e79fc3c55cb288d",
-      "targetHash": 
"079bfe68e03a98a4507312feef719854d1c6adcf6a01564b2ac3241d7a7cd76d",
+      "sourceHash": 
"5338a79c446d99b27f1c4f2689f7cdabababbd71c99016093300154d574dd6bd",
+      "targetHash": 
"2c7bf43fe98fd8005d44a9cc58fe02ec5e520f508c87f16d664b1ff657f722cb",
       "warnings": [],
       "history": [
         {
           "attempt": 1,
+          "issues": [
+            {
+              "check": "protected-content",
+              "message": "Restore protected source content:\nnumeric values: 
expected 
[\"0\",\"0.15\",\"1\",\"1\",\"10\",\"10000\",\"128\",\"134217728\",\"2\",\"2.0.0\",\"2.1\",\"2.1\",\"3\",\"3\",\"3\",\"3\",\"3\",\"4\",\"4\",\"4.0.3\",\"4.0.3\",\"4.1.0\",\"4.1.0\",\"5.0.0\",\"7\",\"9\"];
 received 
[\"0\",\"0.15\",\"1\",\"1\",\"1\",\"10\",\"10000\",\"128\",\"134217728\",\"2\",\"2.0.0\",\"2.1\",\"2.1\",\"3\",\"3\",\"3\",\"3\",\"3\",\"4\",\"4\",\"4.0.3\",\"4.0.3\",\"4.1.0\",\"4.1.0\",\"5.0
 [...]
+            }
+          ]
+        },
+        {
+          "attempt": 2,
           "issues": []
         }
       ]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to