hailin0 commented on code in PR #6842:
URL: https://github.com/apache/seatunnel/pull/6842#discussion_r1675043996
##########
docs/zh/connector-v2/sink/Hive.md:
##########
@@ -0,0 +1,522 @@
+# Hive
+
+> Hive 数据接收器
+
+## 支持的版本
+
+已经验证的版本 :
+- 2.3.9
+- 3.1.1
+
+# 使用依赖
+
+当你使用Spark/Flink时, 你需要保证已经与Hive进行了集成.
+当你需要使用Zeta引擎时, 你需要将这些依赖放到`$SEATUNNEL_HOME/lib/`目录中.
+- `seatunnel-hadoop3-3.1.4-uber.jar`
+- `hive-exec-<hive_version>.jar`
+- `libfb303-0.9.3.jar`
+- `hive-jdbc-<hive_version>.jar` (当设置了`hive_jdbc_url`参数, 需要使用`savemode`功能时)
+
+## 主要特性
+
+- [x] [精准一次](../../concept/connector-v2-features.md)
+ 我们使用二阶段提交来保证精准一次
+
+- [x] 支持的文件类型
+
+ - [x] text
+ - [x] csv
+ - [x] parquet
+ - [x] orc
+ - [x] json
+- [x] 支持的压缩方式
+ - [x] none (default)
+ - [x] lzo
+ - [x] snappy
+ - [x] lz4
+ - [x] gzip
+ - [x] brotli
+ - [x] zstd
+
+## 数据类型映射
+
+| Hive Data Type | SeaTunnel Data Type |
+|----------------|---------------------|
+| tinyint | byte |
+| smallint | short |
+| int | int |
+| bigint | long |
+| float | float |
+| double | double |
+| decimal | decimal |
+| timestamp | local_date_time |
+| date | local_date |
+| string | string |
+| varchar | string |
+| boolean | boolean |
+| binary | byte array |
+| arrays | array |
+| maps | map |
+| structs | seatunnel row |
+| char | not supported |
+| interval | not supported |
+| union | not supported |
+
+## 连接器选项
+
+| 名称 | 类型 | 是否必要 | 默认值
|
描述
|
+|-------------------------------|---------|------------------|------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|
+| table_name | string | yes | -
| 模板表名称 例如: `db1.table1`, 如果source端支持多表, 你可以使用
`${database_name}.${table_name}` 来生成表名, `${database_name}`和`${table_name}`
这两个值会根据source端生成的信息进行替换 |
+| metastore_uri | string | yes | -
| Hive Metastore的地址
|
+| hive_jdbc_url | string | no | -
| Hive JDBC的地址 例如: `jdbc:hive2://127.0.0.1:10000/default`,
`jdbc:hive2://127.0.0.1:10000/default;user=<user>;password=<password>`
|
+| schema_save_mode | Enum | no |
CREATE_SCHEMA_WHEN_NOT_EXIST | 针对目标侧已有的表结构选择不同的处理方案, 请参考下方的 `schema_save_mode`
|
+| data_save_mode | Enum | no | APPEND_DATA
| 针对目标侧已存在的数据选择不同的处理方案, 请参考下方的 `data_save_mode`
|
+| save_mode_create_template | string | yes in condition | see below
| 查看下方解释
|
+| save_mode_partition_keys | list | yes in condition | see below
| 查看下方解释
|
+| compress_codec | string | no | none
| 文件压缩方式
|
+| hdfs_site_path | string | no | -
| `hdfs-site.xml`文件路径
|
+| hive_site_path | string | no | -
| `hive-site.xml`文件路径
|
+| hive.hadoop.conf | Map | no | -
| Properties in hadoop conf('core-site.xml', 'hdfs-site.xml',
'hive-site.xml')
|
+| hive.hadoop.conf-path | string | no | -
| 也可以指定文件夹, 会从这个文件夹下读取这几个配置('core-site.xml', 'hdfs-site.xml',
'hive-site.xml')
|
+| krb5_path | string | no | /etc/krb5.conf
| `krb5.conf`文件路径
|
+| kerberos_principal | string | no | -
| The principal of kerberos
|
+| kerberos_keytab_path | string | no | -
| keytab文件路径
|
+| abort_drop_partition_metadata | boolean | no | true
| 当遇到异常时, 是否回滚Hive MetaStore中的元数据.
|
+| common-options | | no | -
| Sink插件常用参数,请参考 [Sink常用选项 ](common-options.md) 了解详情
|
+
+### schema_save_mode [Enum]
+
+在同步任务开始之前, 针对目标侧已有的表结构选择不同的处理方案
+选项介绍:
+`RECREATE_SCHEMA` :无论表是否存在, 都会创建表
+`CREATE_SCHEMA_WHEN_NOT_EXIST` :当表不存在时创建表
+`ERROR_WHEN_SCHEMA_NOT_EXIST` :当表不存在时, 抛出异常
+
+### data_save_mode[Enum]
+
+在同步任务开始之前, 针对目标侧已存在的数据选择不同的处理方案
+选项介绍:
+`APPEND_DATA`:添加数据
+`ERROR_WHEN_DATA_EXISTS`:当数据存在将会指向`select * from table limit 1`语句去查询是否存在数据,
当表过大是会导致执行速度慢, 请谨慎使用.
+
+### save_mode_create_template
+
+当`schema_save_mode`是`RECREATE_SCHEMA`, `CREATE_SCHEMA_WHEN_NOT_EXIST`这两个配置时,
需要进行配置.
+配置后会根据这个模板来执行建表语句
+
+模板支持这三个变量
+
+- database: 用于获取上游的数据库名称
+- table_name: 用于获取上游的表名称
Review Comment:
update all variable names
##########
docs/zh/connector-v2/sink/Hive.md:
##########
@@ -0,0 +1,522 @@
+# Hive
+
+> Hive 数据接收器
+
+## 支持的版本
+
+已经验证的版本 :
+- 2.3.9
+- 3.1.1
+
+# 使用依赖
+
+当你使用Spark/Flink时, 你需要保证已经与Hive进行了集成.
+当你需要使用Zeta引擎时, 你需要将这些依赖放到`$SEATUNNEL_HOME/lib/`目录中.
+- `seatunnel-hadoop3-3.1.4-uber.jar`
+- `hive-exec-<hive_version>.jar`
+- `libfb303-0.9.3.jar`
+- `hive-jdbc-<hive_version>.jar` (当设置了`hive_jdbc_url`参数, 需要使用`savemode`功能时)
+
+## 主要特性
+
+- [x] [精准一次](../../concept/connector-v2-features.md)
+ 我们使用二阶段提交来保证精准一次
+
+- [x] 支持的文件类型
+
+ - [x] text
+ - [x] csv
+ - [x] parquet
+ - [x] orc
+ - [x] json
+- [x] 支持的压缩方式
+ - [x] none (default)
+ - [x] lzo
+ - [x] snappy
+ - [x] lz4
+ - [x] gzip
+ - [x] brotli
+ - [x] zstd
+
+## 数据类型映射
+
+| Hive Data Type | SeaTunnel Data Type |
+|----------------|---------------------|
+| tinyint | byte |
+| smallint | short |
+| int | int |
+| bigint | long |
+| float | float |
+| double | double |
+| decimal | decimal |
+| timestamp | local_date_time |
+| date | local_date |
+| string | string |
+| varchar | string |
+| boolean | boolean |
+| binary | byte array |
+| arrays | array |
+| maps | map |
+| structs | seatunnel row |
+| char | not supported |
+| interval | not supported |
+| union | not supported |
+
+## 连接器选项
+
+| 名称 | 类型 | 是否必要 | 默认值
|
描述
|
+|-------------------------------|---------|------------------|------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|
+| table_name | string | yes | -
| 模板表名称 例如: `db1.table1`, 如果source端支持多表, 你可以使用
`${database_name}.${table_name}` 来生成表名, `${database_name}`和`${table_name}`
这两个值会根据source端生成的信息进行替换 |
+| metastore_uri | string | yes | -
| Hive Metastore的地址
|
+| hive_jdbc_url | string | no | -
| Hive JDBC的地址 例如: `jdbc:hive2://127.0.0.1:10000/default`,
`jdbc:hive2://127.0.0.1:10000/default;user=<user>;password=<password>`
|
+| schema_save_mode | Enum | no |
CREATE_SCHEMA_WHEN_NOT_EXIST | 针对目标侧已有的表结构选择不同的处理方案, 请参考下方的 `schema_save_mode`
|
+| data_save_mode | Enum | no | APPEND_DATA
| 针对目标侧已存在的数据选择不同的处理方案, 请参考下方的 `data_save_mode`
|
+| save_mode_create_template | string | yes in condition | see below
| 查看下方解释
|
+| save_mode_partition_keys | list | yes in condition | see below
| 查看下方解释
|
+| compress_codec | string | no | none
| 文件压缩方式
|
+| hdfs_site_path | string | no | -
| `hdfs-site.xml`文件路径
|
+| hive_site_path | string | no | -
| `hive-site.xml`文件路径
|
+| hive.hadoop.conf | Map | no | -
| Properties in hadoop conf('core-site.xml', 'hdfs-site.xml',
'hive-site.xml')
|
+| hive.hadoop.conf-path | string | no | -
| 也可以指定文件夹, 会从这个文件夹下读取这几个配置('core-site.xml', 'hdfs-site.xml',
'hive-site.xml')
|
+| krb5_path | string | no | /etc/krb5.conf
| `krb5.conf`文件路径
|
+| kerberos_principal | string | no | -
| The principal of kerberos
|
+| kerberos_keytab_path | string | no | -
| keytab文件路径
|
+| abort_drop_partition_metadata | boolean | no | true
| 当遇到异常时, 是否回滚Hive MetaStore中的元数据.
|
+| common-options | | no | -
| Sink插件常用参数,请参考 [Sink常用选项 ](common-options.md) 了解详情
|
+
+### schema_save_mode [Enum]
+
+在同步任务开始之前, 针对目标侧已有的表结构选择不同的处理方案
+选项介绍:
+`RECREATE_SCHEMA` :无论表是否存在, 都会创建表
+`CREATE_SCHEMA_WHEN_NOT_EXIST` :当表不存在时创建表
+`ERROR_WHEN_SCHEMA_NOT_EXIST` :当表不存在时, 抛出异常
+
+### data_save_mode[Enum]
+
+在同步任务开始之前, 针对目标侧已存在的数据选择不同的处理方案
+选项介绍:
+`APPEND_DATA`:添加数据
+`ERROR_WHEN_DATA_EXISTS`:当数据存在将会指向`select * from table limit 1`语句去查询是否存在数据,
当表过大是会导致执行速度慢, 请谨慎使用.
+
+### save_mode_create_template
+
+当`schema_save_mode`是`RECREATE_SCHEMA`, `CREATE_SCHEMA_WHEN_NOT_EXIST`这两个配置时,
需要进行配置.
+配置后会根据这个模板来执行建表语句
+
+模板支持这三个变量
+
+- database: 用于获取上游的数据库名称
+- table_name: 用于获取上游的表名称
Review Comment:
```suggestion
- table: 用于获取上游的表名称
```
Stop using conflicting variable names
https://github.com/apache/seatunnel/pull/7131/files#diff-afa6e3f404e16cae193f209cec05b98d381fbc7f3d101ff6b923a09330c39f26R234
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]