Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update tidb-lightning-overview and tidb-lightning-distributed-import #8592

Merged
merged 2 commits into from
Mar 11, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions tidb-lightning/tidb-lightning-distributed-import.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ TiDB Lightning 在运行时,需要独占部分资源,因此如果需要在

在部署 TiDB Lightning 的 5 个节点上面分别导出两个分表的数据:

- 如果两个分表位于同一个 MySQL 实例中,可以直接使用 Dumpling 的 `-f` 参数一次性导出。此时在使用 TiDB Lightning 导入时,指定 `data-source-dir` 为 Dumpling 数据导出的目录即可;
- 如果两个分表位于同一个 MySQL 实例中,可以直接使用 Dumpling 的 `-filter` 参数一次性导出。此时在使用 TiDB Lightning 导入时,指定 `data-source-dir` 为 Dumpling 数据导出的目录即可;
shichun-0415 marked this conversation as resolved.
Show resolved Hide resolved
- 如果两个分表的数据分布在不同的 MySQL 节点上,则需要使用 Dumpling 分别导出,两次导出数据需要放置在同一父目录下<b>不同子目录里</b>,然后在使用 TiDB Lightning 导入时,`data-source-dir` 指定为此父级目录。

使用 Dumpling 导出数据的步骤,请参考 [Dumpling](/dumpling-overview.md)。
Expand All @@ -102,10 +102,10 @@ data-source-dir = "/path/to/source-dir"

[tikv-importer]
# 是否允许向已存在数据的表导入数据。默认值为 false。
# 当使用并行导入模式时,由于多个 TiDB Lightning 实例同时导入一张表,因此此开关必须设置为 true。
# 当使用并行导入模式时,由于多个 TiDB Lightning 实例同时导入一张表,因此此开关必须设置为 true。
incremental-import = true
# "local":默认使用该模式,适用于 TB 级以上大数据量,但导入期间下游 TiDB 无法对外提供服务。
# "tidb":TB 级以下数据量也可以采用 "tidb" 后端模式,下游 TiDB 可正常提供服务。
# "tidb":TB 级以下数据量也可以采用 "tidb" 后端模式,下游 TiDB 可正常提供服务。
backend = "local"

# 设置本地排序数据的路径
Expand All @@ -117,9 +117,9 @@ schema-pattern = "my_db"
table-pattern = "my_table_*"
target-schema = "my_db"
target-table = "my_table"
```
```

如果数据源存放在 Amazon S3 或 GCS 等分布式存储缓存,请参考[外部存储](/br/backup-and-restore-storages.md)。
如果数据源存放在 Amazon S3 或 GCS 等外部存储中,请参考[外部存储](/br/backup-and-restore-storages.md)。

### 第 3 步:开启 TiDB Lightning 进行数据导入

Expand All @@ -129,7 +129,7 @@ target-table = "my_table"

```shell
# !/bin/bash
nohup ./tidb-lightning -config tidb-lightning.toml > nohup.out &
nohup tiup tidb-lightning -config tidb-lightning.toml > nohup.out &
```

在并行导入的场景下,TiDB Lightning 在启动任务之后,会自动进行下列检查:
Expand All @@ -155,7 +155,7 @@ TiDB Lightning 也支持并行导入单表的数据。例如,将存放在 Amaz

> **注意:**
>
> 在本地环境下,可以使用 Dumpling 的 --where 参数,预先将单表的数据划分成不同的部分导出至多台机器的本地磁盘,此时依然可以使用并行导入功能,其配置与示例 1 相同。
> 在本地环境下,可以使用 Dumpling 的 `--filesize` 或 `--where` 参数,预先将单表的数据划分成不同的部分导出至多台机器的本地磁盘,此时依然可以使用并行导入功能,其配置与示例 1 相同。

假设通过 Dumpling 导出的源文件存放在 Amazon S3 云存储中,数据文件为 `my_db.my_table.00001.sql` ~ `my_db.my_table.10000.sql` 共计 10000 个 SQL 文件。如果希望使用 2 个 TiDB Lightning 实例加速导入,则需要在配置文件中增加如下设置:

Expand Down
4 changes: 3 additions & 1 deletion tidb-lightning/tidb-lightning-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ TiDB Lightning 有以下两个主要的使用场景:

目前,TiDB Lightning 支持:

- 导入 [Dumpling](/dumpling-overview.md)、CSV [Amazon Aurora Parquet](/migrate-aurora-to-tidb.md) 输出格式的数据源
- 导入 [Dumpling](/dumpling-overview.md)输出的数据、CSV 文件或 [Amazon Aurora 生成的 Apache Parquet 文件](/migrate-aurora-to-tidb.md)。
- 从本地盘或 [Amazon S3 云盘](/br/backup-and-restore-storages.md)读取数据。

要快速了解 Lightning 的基本原理和使用方法,建议先观看下面的培训视频(时长 28 分钟)。注意本视频只为学习参考,具体操作步骤和最新功能,请以文档内容为准。
Expand Down Expand Up @@ -58,3 +58,5 @@ TiDB Lightning 还支持使用 TiDB-backend 作为后端导入数据:`tidb-lig
* TiDB Lightning 与 TiDB 一起使用时需要注意:

TiDB Lightning 在 v5.4.0 之前不支持导入 `charset=GBK` 的表。

* 如果源数据是 Apache Parquet 文件,TiDB Lightning 目前只支持由 Amazon Aurora 生成的 Apache Parquet 文件。