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 2f2dc693952 [fix](catalog) refine catalog doc (#1768)
2f2dc693952 is described below

commit 2f2dc6939522248eae21005ba7d3cbb9ea021d3a
Author: Mingyu Chen (Rayner) <morning...@163.com>
AuthorDate: Mon Jan 13 12:26:27 2025 +0800

    [fix](catalog) refine catalog doc (#1768)
    
    ## Versions
    
    - [x] dev
    - [ ] 3.0
    - [ ] 2.1
    - [ ] 2.0
    
    ## Languages
    
    - [x] Chinese
    - [ ] English
    
    ## Docs Checklist
    
    - [ ] Checked by AI
    - [ ] Test Cases Built
---
 .../current/lakehouse/catalog-overview.md          |  32 +++--
 .../current/lakehouse/catalogs/hive-catalog.md     | 142 +++++++++++++++++----
 .../current/lakehouse/catalogs/iceberg-catalog.md  | 101 ++++++++-------
 3 files changed, 190 insertions(+), 85 deletions(-)

diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalog-overview.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalog-overview.md
index 92ab0ca2bb8..ab5cfc8e859 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalog-overview.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalog-overview.md
@@ -30,7 +30,6 @@ under the License.
 
 Doris 中的数据目录分为两种:
 
-
 | 类型                         | 说明 |
 | ---------------- | -------------------------------------------------------- |
 | Internal Catalog | 内置数据目录,名称固定为 `internal`,用于存储 Doris 内表数据。不可创建、更改和删除。      |
@@ -38,14 +37,13 @@ Doris 中的数据目录分为两种:
 
 数据目录主要适用于以下三类场景,但不同的数据目录适用场景不同,详见对应数据目录的文档。
 
-
 | 场景 | 说明      |
 | ---- | ------------------------------------------- |
 | 查询加速 | 针对湖仓数据如 Hive、Iceberg、Paimon 等进行直接查询加速。      |
 | 数据集成 | ZeroETL 方案,直接访问不同数据源生成结果数据,或让数据在不同数据源中便捷流转。 |
 | 数据写回 | 通过 Doris 进行数据加工处理后,写回到外部数据源。                |
 
-本文以 Iceberg Catalog 为例,重点介绍数据目录的基础操作。不同数据目录的详细介绍,请参阅对应的数据目录文档。
+本文以 [Iceberg Catalog](./catalogs/iceberg-catalog.md) 
为例,重点介绍数据目录的基础操作。不同数据目录的详细介绍,请参阅对应的数据目录文档。
 
 ## 创建数据目录
 
@@ -70,16 +68,16 @@ CREATE CATALOG iceberg_catalog PROPERTIES (
 
 | 属性名                     | 描述                                                 
                       | 示例                                    |
 | ----------------------- | 
------------------------------------------------------------------------- | 
------------------------------------- |
-| include\_database\_list | 支持只同步指定的多个 Database,以 `,` 分隔。默认同步所有 
Database。Database 名称是大小写敏感的。          | `'include_database_list' = 'db1,db2'` |
-| exclude\_database\_list | 支持指定不需要同步的多个 Database,以 `,` 分割。默认不做任何过滤,同步所有 
Database。Database 名称是大小写敏感的。 | `'exclude_database_list' = 'db1,db2'` |
+| `include_database_list` | 支持只同步指定的多个 Database,以 `,` 分隔。默认同步所有 
Database。Database 名称是大小写敏感的。当外部数据源有大量 Database,但仅需访问个别 Database 
时,可以使用此参数,避免大量的元数据同步。          | `'include_database_list' = 'db1,db2'` |
+| `exclude_database_list` | 支持指定不需要同步的多个 Database,以 `,` 分割。默认不做任何过滤,同步所有 
Database。Database 名称是大小写敏感的。适用场景同上,反向排除不需要访问的数据库。如果冲突,`exclude` 优先级高于 `include` 
| `'exclude_database_list' = 'db1,db2'` |
 
 ### 列类型映射
 
-用户创建数据目录后,Doris 会自动同步数据目录的数据库、表和 Schema。不同数据目录的列类型映射规则请参与对应的数据目录文档。
+用户创建数据目录后,Doris 会自动同步数据目录的数据库、表和 Schema。不同数据目录的列类型映射规则请参阅对应的数据目录文档。
 
 对于当前无法映射到 Doris 列类型的外部数据类型,如 `UNION`, `INTERVAL` 等,Doris 会将列类型映射为 
`UNSUPPORTED` 类型。对于 `UNSUPPORTED` 类型的查询,示例如下:
 
-假设同步后的表 schema 为:
+假设同步后的表 Schema 为:
 
 ```text
 k1 INT,
@@ -119,7 +117,7 @@ mysql> SHOW CATALOGS;
 
 Doris 提供 `SWITCH` 语句用于将连接会话上下文切换到对应的数据目录。类似使用 `USE` 语句切换数据库。
 
-切换到数据目录后,可以 `USE` 语句继续切换到指定的数据库。或通过 `SHOW DATABASES` 查看当前数据目录下的数据库。
+切换到数据目录后,可以使用 `USE` 语句继续切换到指定的数据库。或通过 `SHOW DATABASES` 查看当前数据目录下的数据库。
 
 ```sql
 SWITCH iceberg_catalog;
@@ -134,7 +132,7 @@ SHOW DATABASES;
 | iceberg_db         |
 +--------------------+
 
-USE iceberg_tpcds100;
+USE iceberg_db;
 ```
 
 也可以通过 `USE` 语句,直接使用全限定名 `catalog_name.database_name` 切换到指定数据目录下的指定数据库:
@@ -168,7 +166,7 @@ GROUP BY id ORDER BY id;
 
 Doris 支持跨数据目录的关联查询。
 
-这里我们再创建一个 MySQL Catalog:
+这里我们再创建一个 [MySQL Catalog](./catalogs/jdbc-mysql-catalog.md):
 
 ```sql
 CREATE CATALOG mysql_catalog properties(
@@ -213,9 +211,9 @@ Doris 支持通过 `INSERT` 语句直接将数据写回到外部数据源。具
 
 * [ Hive Catalog ](./catalogs/hive-catalog.md)
 
-* [ Iceberg Catalog(PreviewV2)](./catalogs/iceberg-catalog.md)
+* [ Iceberg Catalog](./catalogs/iceberg-catalog.md)
 
-* [ JDBC Catalog 概述](./catalogs/jdbc-catalog-overview.md)
+* [ JDBC Catalog](./catalogs/jdbc-catalog-overview.md)
 
 ## 刷新数据目录
 
@@ -232,17 +230,22 @@ REFRESH DATABASE catalog_name.db_name;
 REFRESH TABLE catalog_name.db_name.table_name;
 ```
 
-关于元数据缓存的详细介绍,请参阅:[元数据缓存](./datacache.md)
+Doris 也支持关闭元数据缓存,以便能够实时访问到最新的元数据。
+
+关于元数据缓存的详细介绍和配置,请参阅:[元数据缓存](./meta-cache.md)
 
 ## 修改数据目录
 
 可以通过 `ALTER CATALOG` 对数据目录的属性或名称进行修改:
 
 ```sql
+-- Rename a catalog
 ALTER CATALOG iceberg_catalog RENAME iceberg_catalog2;
 
+-- Modify properties of a catalog
 ALTER CATALOG iceberg_catalog SET PROPERTIES ('key1' = 'value1' [, 'key' = 
'value2']); 
 
+-- Modify the comment of a catalog
 ALTER CATALOG iceberg_catalog MODIFY COMMENT 'my iceberg catalog';
 ```
 
@@ -251,7 +254,7 @@ ALTER CATALOG iceberg_catalog MODIFY COMMENT 'my iceberg 
catalog';
 可以通过 `DROP CATALOG` 删除指定的外部数据目录。
 
 ```sql
-DROP CATALOG [IF NOT EXISTS] iceberg_catalog;
+DROP CATALOG [IF EXISTS] iceberg_catalog;
 ```
 
 从 Doris 中删除外部数据目录,并不会删除实际的数据,只是删除了 Doris 中存储的数据目录映射关系。
@@ -259,3 +262,4 @@ DROP CATALOG [IF NOT EXISTS] iceberg_catalog;
 ## 权限管理
 
 外部数据目录中库表的权限管理和内表一致。具体可参阅 
[认证和鉴权](../admin-manual/auth/authentication-and-authorization.md) 文档。
+
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/hive-catalog.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/hive-catalog.md
index b32e72a995d..8ee11401447 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/hive-catalog.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/hive-catalog.md
@@ -52,7 +52,7 @@ CREATE CATALOG [IF NOT EXISTS] catalog_name PROPERTIES (
 );
 ```
 
-* \<hive\_metastore\_type>
+* `<hive_metastore_type>`
 
   指定 Hive Metastore 的类型。
 
@@ -62,21 +62,21 @@ CREATE CATALOG [IF NOT EXISTS] catalog_name PROPERTIES (
 
   * `dlf`:使用 Hive Metastore 兼容接口访问阿里云 DLF 元数据服务。
 
-* \<fs\_defaultfs>
+* `<fs_defaultfs>`
 
   当需要通过 Doris 写入数据到这个 Hive Catalog 中表时,此参数为必选项。示例:
 
-  `'fs.defaultFS' = 'hdfs://172.21.16.47:4007'`
+  `'fs.defaultFS' = 'hdfs://namenode:port'`
 
-* {MetaStoreProperties}
+* `{MetaStoreProperties}`
 
   MetaStoreProperties 部分用于填写 Metastore 元数据服务连接和认证信息。具体可参阅【支持的元数据服务】部分。
 
-* {StorageProperties}
+* `{StorageProperties}`
 
   StorageProperties 部分用于填写存储系统相关的连接和认证信息。具体可参阅【支持的存储系统】部分。
 
-* {CommonProperties}
+* `{CommonProperties}`
 
   CommonProperties 部分用于填写通用属性。请参阅[ 数据目录概述 ](../catalog-overview.md)中【通用属性】部分。
 
@@ -96,8 +96,6 @@ CREATE CATALOG [IF NOT EXISTS] catalog_name PROPERTIES (
 
 ### 支持的存储系统
 
-> 如果需要通过 Doris 创建 Hive 表或写入数据,需要在 Catalog 属性中显式增加 `fs.defaultFS` 属性。如果创建 
Catalog 仅用于查询,则该参数可以省略。
-
 * [ HDFS](../storages/hdfs.md)
 
 * [ AWS S3](../storages/s3.md)
@@ -112,6 +110,8 @@ CREATE CATALOG [IF NOT EXISTS] catalog_name PROPERTIES (
 
 * [ MINIO](../storages/minio.md)
 
+> 如果需要通过 Doris 创建 Hive 表或写入数据,需要在 Catalog 属性中显式增加 `fs.defaultFS` 属性。如果创建 
Catalog 仅用于查询,则该参数可以省略。
+
 ### 支持的数据格式
 
 * Hive
@@ -120,7 +120,7 @@ CREATE CATALOG [IF NOT EXISTS] catalog_name PROPERTIES (
 
   * [ ORC](../file-formats/orc.md)
 
-  * [ Text/CSV/Json](../file-formats/text.md)
+  * [ Text/CSV/JSON](../file-formats/text.md)
 
 * Hudi
 
@@ -233,23 +233,47 @@ SELECT * FROM hive_tbl LIMIT 10;
 SELECT * FROM hive_ctl.hive_db.hive_tbl LIMIT 10;
 ```
 
-### 查询 Hive 分区(Querying Hive Partitions)
+### 查询 Hive 分区
 
 可以通过下面两种方式查询 Hive 分区信息。
 
-* `SHOW PARTITIONS FROM hive_table`
+* `SHOW PARTITIONS FROM [catalog.][db.]hive_table`
 
   该语句可以列出指定 Hive 表的所有分区以及分区值信息。
 
+  ```sql
+  SHOW PARTITIONS FROM hive_table;
+
+  +--------------------------------+
+  | Partition                      |
+  +--------------------------------+
+  | pt1=2024-10-10/pt2=beijing     |
+  | pt1=2024-10-10/pt2=shanghai    |
+  | pt1=2024-10-11/pt2=beijing     |
+  | pt1=2024-10-11/pt2=shanghai    |
+  | pt1=2024-10-12/pt2=nanjing     |
+  +--------------------------------+
+  ```
+
 * 使用 `table$partitions` 元数据表
 
-  自 2.1.7 和 3.0.3 版本开始,用户可以通过 `table$partitions` 元数据表查询 Hive 
分区信息。`table$partitions` 本质上是一个关系表,所以可以使用在任意 SELECT 语句中。
+  自 2.1.7 和 3.0.3 版本开始,用户可以通过 `table$partitions` 元数据表查询 Hive 
分区信息。`table$partitions` 本质上是一个关系表,每个分区列为一列,所以可以使用在任意 SELECT 语句中。
 
   ```sql
   SELECT * FROM hive_table$partitions;
+
+  +------------+-------------+
+  | pt1        | pt2         |
+  +------------+-------------+
+  | 2024-10-10 | beijing     |
+  | 2024-10-10 | shanghai    |
+  | 2024-10-12 | nanjing     |
+  | 2024-10-11 | beijing     |
+  | 2024-10-11 | shanghai    |
+  +------------+-------------+
   ```
 
-### 查询 Hive 事务表(Hive Transactional Table)
+### 查询 Hive 事务表
 
 Hive Transactional 表是 Hive 中支持 ACID 语义的表。详情可见 [Hive 
Transactions](https://cwiki.apache.org/confluence/display/Hive/Hive+Transactions)。
 
@@ -280,7 +304,7 @@ Hive Transactional 表是 Hive 中支持 ACID 语义的表。详情可见 [Hive
 
 ### INSERT INTO
 
-INSERT 操作会数据以追加的方式写入到目标表中。当前不支持指定分区写入。
+INSERT 操作会将数据以追加的方式写入到目标表中。当前不支持指定分区写入。
 
 ```sql
 INSERT INTO hive_tbl values (val1, val2, val3, val4);
@@ -383,7 +407,7 @@ DROP DATABASE [IF EXISTS] hive_ctl.hive_db;
 ```
 
 :::caution
-注意 对于 Hive Database,必须先删除这个 Database 下的所有表后,才能删除 Database,否则会报错。这个操作会同步删除 Hive 
中对应的 Database。
+对于 Hive Database,必须先删除这个 Database 下的所有表后,才能删除 Database,否则会报错。这个操作会同步删除 Hive 
中对应的 Database。
 :::
 
 ### 创建和删除表
@@ -392,17 +416,89 @@ DROP DATABASE [IF EXISTS] hive_ctl.hive_db;
 
   Doris 支持在 Hive 中创建分区或非分区表。
 
+  ```sql
+  -- Create unpartitioned hive table
+  CREATE TABLE unpartitioned_table (
+    `col1` BOOLEAN COMMENT 'col1',
+    `col2` INT COMMENT 'col2',
+    `col3` BIGINT COMMENT 'col3',
+    `col4` CHAR(10) COMMENT 'col4',
+    `col5` FLOAT COMMENT 'col5',
+    `col6` DOUBLE COMMENT 'col6',
+    `col7` DECIMAL(9,4) COMMENT 'col7',
+    `col8` VARCHAR(11) COMMENT 'col8',
+    `col9` STRING COMMENT 'col9'
+  )  ENGINE=hive
+  PROPERTIES (
+    'file_format'='parquet'
+  );
+  
+  -- Create partitioned hive table
+  -- The partition columns must be in table's column definition list
+  CREATE TABLE partition_table (
+    `col1` BOOLEAN COMMENT 'col1',
+    `col2` INT COMMENT 'col2',
+    `col3` BIGINT COMMENT 'col3',
+    `col4` DECIMAL(2,1) COMMENT 'col4',
+    `pt1` VARCHAR COMMENT 'pt1',
+    `pt2` VARCHAR COMMENT 'pt2'
+  )  ENGINE=hive
+  PARTITION BY LIST (pt1, pt2) ()
+  PROPERTIES (
+    'file_format'='orc',
+    'compression'='zlib'
+  );
+  
+  -- Create text format table(Since 2.1.7 & 3.0.3)
+  CREATE TABLE text_table (
+      `id` INT,
+      `name` STRING
+  ) PROPERTIES (
+      'file_format'='text',
+      'compression'='gzip',
+      'field.delim'='\t',
+      'line.delim'='\n',
+      'collection.delim'=';',
+      'mapkey.delim'=':',
+      'serialization.null.format'='\\N',
+      'escape.delim'='\\'
+  );
+  ```
+
+  创建后,可以通过 `SHOW CREATE TABLE` 命令查看 Hive 的建表语句。
+
+  注意,不同于 Hive 中的建表语句。在 Doris 中创建 Hive 分区表时,分区列也必须写到 Table 的 Schema 
中。同时,分区列必须在所有 Schema 的最后,且顺序保持一致。
+
+  :::tip
+  对于某些默认开启 ACID 事务特性的 Hive 集群,使用 Doris 建表后,表属性 `transactional` 会为 `true`。而 
Doris 只支持部分 Hive 事务表的特性,因此可能会导致 Doris 创建的 Hive,Doris 
本身无法读取的问题。因此,需要在建表的属性中,显式增加:`"transactional" = "false"`,来创建非事务的 Hive 表:
+
+  ```
+  CREATE TABLE non_acid_table(
+    `col1` BOOLEAN COMMENT 'col1',
+    `col2` INT COMMENT 'col2',
+    `col3` BIGINT COMMENT 'col3'
+  )  ENGINE=hive
+  PROPERTIES (
+    'transactional'='false',
+  );
+  ```
+  :::
+
 * 删除
 
   可以通过 `DROP TABLE` 语句删除一个 Hive 表。当前删除表后,会同时删除数据,包括分区数据。
 
 * 列类型映射
 
-  参考【列类型映射】部分
+  参考【列类型映射】部分。需要额外注意一下限制:
+
+  - 列类型只能为默认的 Nullable,不支持 `NOT NULL`。
+  - Hive 3.0 支持设置默认值。如果需要设置默认值,则需要在 Catalog 属性中显示的添加 `"hive.version" = 
"3.0.0"`。
+  - 插入数据后,如果类型不能够兼容,例如 `'abc'` 插入到数值类型,则会转为 `null` 值插入。
 
 * 分区
 
-  Hive 中的分区类型对应 Apache Doris 中的 List 分区。因此,在 Apache Doris 中 创建 Hive 分区表,需使用 
List 分区的建表语句,但无需显式的枚举各个分区。在写入数据时,Apache Doris 会根据数据的值,自动创建对应的 Hive 
分区。支持创建单列或多列分区表。
+  Hive 中的分区类型对应 Doris 中的 List 分区。因此,在 Doris 中 创建 Hive 分区表,需使用 List 
分区的建表语句,但无需显式的枚举各个分区。在写入数据时,Doris 会根据数据的值,自动创建对应的 Hive 分区。支持创建单列或多列分区表。
 
 * 文件格式
 
@@ -442,7 +538,7 @@ DROP DATABASE [IF EXISTS] hive_ctl.hive_db;
 
 ## 订阅 Hive Metastore 事件
 
-通过让 FE 节点定时读取 HMS 的 Notification Event 来感知 Hive 表元数据的变更情况,目前支持处理如下 Event:
+通过让 FE 节点定时读取 HMS 的 Notification Event 来感知 Hive 
表元数据的实时变更情况,以提高元数据的时效性。目前支持处理如下 Event:
 
 | 事件              | 事件行为和对应的动作                                                 
               |
 | --------------- | 
------------------------------------------------------------------------- |
@@ -456,11 +552,13 @@ DROP DATABASE [IF EXISTS] hive_ctl.hive_db;
 | DROP PARTITION  | 在对应表缓存的分区列表里删除分区,并失效该分区的缓存。                                
               |
 | ALTER PARTITION | 如果是重命名,先删除旧名字的分区,再用新名字创建分区,否则失效该分区的缓存。                     
               |
 
-> 当导入数据导致文件变更,分区表会走 ALTER PARTITION Event 逻辑,不分区表会走 ALTER TABLE Event 逻辑。
->
-> 如果绕过 HMS 直接操作文件系统的话,HMS 不会生成对应事件,Doris 因此也无法感知。
+:::tip
+1. 当导入数据导致文件变更,分区表会触发 `ALTER PARTITION` 时间,非分区表会触发 `ALTER TABLE` 事件。
+
+2. 如果绕过 HMS 直接操作文件系统的话,HMS 不会生成对应事件,因此 Doris 也无法感知元数据变化。
+:::
 
-该特性在 `fe.conf` 中有如下参数:
+该特性在 `fe.conf` 中有如下相关参数:
 
 1. `enable_hms_events_incremental_sync`: 是否开启元数据自动增量同步功能,默认关闭。
 
diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/iceberg-catalog.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/iceberg-catalog.md
index 5e0f2af06af..0e34031bae4 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/iceberg-catalog.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/lakehouse/catalogs/iceberg-catalog.md
@@ -26,7 +26,9 @@ under the License.
 
 Doris 支持通过多种元数据服务访问 Iceberg 表数据。除支持数据读取外,Doris 也支持对 Iceberg 表进行写入操作。
 
-> 注:用户可以通过 Hive Catalog 访问使用 Hive Metastore 作为元数据的 Iceberg 表。但依然推荐直接使用 Iceberg 
Catalog 以避免一些兼容性问题。
+:::tip
+用户可以通过 Hive Catalog 访问使用 Hive Metastore 作为元数据的 Iceberg 表。但依然推荐直接使用 Iceberg 
Catalog 以避免一些兼容性问题。
+:::
 
 ## 适用场景
 
@@ -51,7 +53,7 @@ CREATE CATALOG [IF NOT EXISTS] catalog_name PROPERTIES (
 );
 ```
 
-* \<iceberg\_catalog\_type>
+* `<iceberg_catalog_type>`
 
   Iceberg Catalog 的类型,支持以下几种:
 
@@ -65,21 +67,21 @@ CREATE CATALOG [IF NOT EXISTS] catalog_name PROPERTIES (
 
   * `dlf`:使用阿里云 DLF 作为元数据服务。
 
-* \<warehouse>
+* `<warehouse>`
 
-  Iceberg 的仓库路径。当 `<iceberg_catalog_type>` 为 \`hadoop\` 时,需指定这个参数。
+  Iceberg 的仓库路径。当 `<iceberg_catalog_type>` 为 `hadoop` 时,需指定这个参数。
 
-  `warehouse` 的路径必须指向 `Database` 
路径的上一级。如你的表路径是:`s3://bucket/path/to/db1/table1`,那么 `warehouse` 
应该是:`s3://bucket/path/to/`
+  `warehouse` 的路径必须指向 `Database` 
路径的上一级。如您的表路径是:`s3://bucket/path/to/db1/table1`,那么 `warehouse` 
应该是:`s3://bucket/path/to/`
 
-* MetaStoreProperties
+* `{MetaStoreProperties}`
 
   MetaStoreProperties 部分用于填写 Metastore 元数据服务连接和认证信息。具体可参阅【支持的元数据服务】部分。
 
-* StorageProperties
+* `{StorageProperties}`
 
   StorageProperties 部分用于填写存储系统相关的连接和认证信息。具体可参阅【支持的存储系统】部分。
 
-* CommonProperties
+* `{CommonProperties}`
 
   CommonProperties 部分用于填写通用属性。请参阅[ 数据目录概述 ](../catalog-overview.md)中【通用属性】部分。
 
@@ -222,8 +224,6 @@ CREATE CATALOG iceberg_dlf PROPERTIES (
 
 ### Iceberg on Rest
 
-该方式需要预先提供 REST 服务,用户需实现获取 Iceberg 元数据的 REST 接口。
-
 ```sql
 CREATE CATALOG iceberg_rest PROPERTIES (
     'type' = 'iceberg',
@@ -232,6 +232,20 @@ CREATE CATALOG iceberg_rest PROPERTIES (
 );
 ```
 
+### Iceberg on Rest with MINIO
+
+```sql
+CREATE CATALOG iceberg_minio PROPERTIES (
+    'type' = 'iceberg',
+    'iceberg.catalog.type' = 'rest',
+    'uri' = 'http://172.21.0.1:8181',
+    's3.access_key' = 'ak',
+    's3.secret_key' = 'sk',
+    's3.endpoint' = 'http://10.0.0.1:9000',
+    's3.region' = 'us-east-1'
+);
+```
+
 ### Iceberg on Google Dataproc Metastore
 
 ```sql
@@ -247,20 +261,6 @@ CREATE CATALOG iceberg_gdm PROPERTIES (
 );
 ```
 
-### Iceberg on Rest with MINIO
-
-```sql
-CREATE CATALOG iceberg_minio PROPERTIES (
-    'type' = 'iceberg',
-    'iceberg.catalog.type' = 'rest',
-    'uri' = 'http://10.0.0.1:8181',
-    's3.access_key' = 'ak',
-    's3.secret_key' = 'sk',
-    's3.endpoint' = 'http://10.0.0.1:9000',
-    's3.region' = 'us-east-1'
-);
-```
-
 ## 查询操作
 
 ### 基础查询
@@ -271,7 +271,7 @@ SWITCH iceberg;
 USE iceberg_db;
 SELECT * FROM iceberg_tbl LIMIT 10;
 
--- 2. use hive database directly
+-- 2. use iceberg database directly
 USE iceberg.iceberg_db;
 SELECT * FROM iceberg_tbl LIMIT 10;
 
@@ -291,7 +291,22 @@ SELECT * FROM iceberg.iceberg_db.iceberg_tbl LIMIT 10;
 SELECT * FROM iceberg_meta(
     'table' = 'iceberg_ctl.iceberg_db.iceberg_tbl',
     'query_type' = 'snapshots'
-);
+)\G
+
+*************************** 1. row ***************************
+ committed_at: 2024-11-28 11:07:29
+  snapshot_id: 8903826400153112036
+    parent_id: -1
+    operation: append
+manifest_list: 
oss://path/to/metadata/snap-8903826400153112036-1-3835e66d-9a18-4cb0-b9b0-9ec80527ad8d.avro
+      summary: 
{"added-data-files":"2","added-records":"3","added-files-size":"2742","changed-partition-count":"2","total-records":"3","total-files-size":"2742","total-data-files":"2","total-delete-files":"0","total-position-deletes":"0","total-equality-deletes":"0"}
+*************************** 2. row ***************************
+ committed_at: 2024-11-28 11:10:11
+  snapshot_id: 6099853805930794326
+    parent_id: 8903826400153112036
+    operation: append
+manifest_list: 
oss://path/to/metadata/snap-6099853805930794326-1-dd46a1bd-219b-4fb0-bb46-ac441d8b3105.avro
+      summary: 
{"added-data-files":"1","added-records":"1","added-files-size":"1367","changed-partition-count":"1","total-records":"4","total-files-size":"4109","total-data-files":"3","total-delete-files":"0","total-position-deletes":"0","total-equality-deletes":"0"}
 ```
 
 可以使用 `FOR TIME AS OF` 和 `FOR VERSION AS OF` 语句,根据快照 ID 或者快照产生的时间读取历史版本的数据。示例如下:
@@ -304,15 +319,9 @@ SELECT * FROM iceberg_tbl FOR VERSION AS OF 
868895038966572;
 
 ## 写入操作
 
-> 使用前,请先设置:
->
-> set global enable\_nereids\_planner = true;
->
-> set global enable\_fallback\_to\_original\_planner = false;
-
 ### INSERT INTO
 
-INSERT 操作会数据以追加的方式写入到目标表中。
+INSERT 操作会将数据以追加的方式写入到目标表中。
 
 例如:
 
@@ -357,13 +366,7 @@ PROPERTIES (
 AS SELECT col1,pt1 as col2,pt2 as pt1 FROM test_ctas.part_ctas_src WHERE 
col1>0;
 ```
 
-注:
-
-在 HDFS 上的 Iceberg 表数据会写入到最终目录,提交 Iceberg 元数据进行管理。
-
-写入的数据文件名称格式为:`<query-id>_<uuid>-<index>.<compress-type>.<file-type>`
-
-### 相关参数(Configurations)
+### 相关参数
 
 * BE
 
@@ -386,7 +389,7 @@ SWITCH iceberg;
 CREATE DATABASE [IF NOT EXISTS] iceberg_db;
 ```
 
-也可以使用全限定名创建,或指定 location(目前只有 hms 类型的 catalog 支持指定 location),如:
+也可以使用全限定名创建,或指定 location(目前只有 hms 类型的 Catalog 支持指定 location),如:
 
 ```sql
 CREATE DATABASE [IF NOT EXISTS] iceberg.iceberg_db;
@@ -412,15 +415,15 @@ mysql> SHOW CREATE DATABASE iceberg_db;
 DROP DATABASE [IF EXISTS] iceberg.iceberg_db;
 ```
 
-:::caution 注意
+:::caution
 对于 Iceberg Database,必须先删除这个 Database 下的所有表后,才能删除 Database,否则会报错
 :::
 
-### 创建和删除表(Table Management)
+### 创建和删除表
 
 * 创建
 
-  Apache Doris 支持在 Iceberg 中创建分区或非分区表。
+  Doris 支持在 Iceberg 中创建分区或非分区表。
 
   例如:
 
@@ -464,25 +467,25 @@ DROP DATABASE [IF EXISTS] iceberg.iceberg_db;
   );
   ```
 
-  创建后,可以通过 `SHOW CREATE TABLE` 命令查看 Iceberg 的建表语句。关于分区表的分区函数,可以参阅后面的\[分区]小节。
+  创建后,可以通过 `SHOW CREATE TABLE` 命令查看 Iceberg 的建表语句。关于分区表的分区函数,可以参阅后面的【分区】小节。
 
 * 删除
 
-  可以通过 `DROP TABLE` 语句删除一个 iceberg 表。当前删除表后,会同时删除数据,包括分区数据。
+  可以通过 `DROP TABLE` 语句删除一个 Iceberg 表。当前删除表后,会同时删除数据,包括分区数据。
 
   例如:
 
   ```sql
-  drop table iceberg_tb;
+  DROP TABLE [IF EXISTS] iceberg_tbl;
   ```
 
 * 列类型映射
 
-  参考【列类型映射】部分
+  参考【列类型映射】部分。
 
 * 分区
 
-  Iceberg 中的分区类型对应 Apache Doris 中的 List 分区。因此,在 Apache Doris 中 创建 Iceberg 
分区表,需使用 List 分区的建表语句,但无需显式的枚举各个分区。在写入数据时,Apache Doris 会根据数据的值,自动创建对应的 Iceberg 
分区。
+  Iceberg 中的分区类型对应 Doris 中的 List 分区。因此,在 Doris 中 创建 Iceberg 分区表,需使用 List 
分区的建表语句,但无需显式的枚举各个分区。在写入数据时,Doris 会根据数据的值,自动创建对应的 Iceberg 分区。
 
   * 支持创建单列或多列分区表。
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to