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

lide pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-1.2-lts by this push:
     new 47b2980954c [branch-1.2](backup-restore) add config for 
upload/download task num per be (#27946)
47b2980954c is described below

commit 47b2980954c6046a3778d1c62354bd71d6aec63f
Author: xueweizhang <[email protected]>
AuthorDate: Tue Dec 5 10:48:13 2023 +0800

    [branch-1.2](backup-restore) add config for upload/download task num per be 
(#27946)
---
 docs/en/docs/admin-manual/config/fe-config.md        | 20 ++++++++++++++++++++
 docs/zh-CN/docs/admin-manual/config/fe-config.md     | 20 ++++++++++++++++++++
 .../main/java/org/apache/doris/common/Config.java    |  6 ++++++
 .../main/java/org/apache/doris/backup/BackupJob.java |  4 ++--
 .../java/org/apache/doris/backup/RestoreJob.java     |  3 +--
 5 files changed, 49 insertions(+), 4 deletions(-)

diff --git a/docs/en/docs/admin-manual/config/fe-config.md 
b/docs/en/docs/admin-manual/config/fe-config.md
index 9d557772b64..91daa268db1 100644
--- a/docs/en/docs/admin-manual/config/fe-config.md
+++ b/docs/en/docs/admin-manual/config/fe-config.md
@@ -2586,6 +2586,26 @@ MasterOnly:true
 
 default timeout of backup job
 
+#### `backup_upload_task_num_per_be`
+
+Default:3
+
+IsMutable:true
+
+MasterOnly:true
+
+The max number of upload tasks assigned to each be during the backup process, 
the default value is 3.
+
+#### `restore_download_task_num_per_be`
+
+Default:3
+
+IsMutable:true
+
+MasterOnly:true
+
+The max number of download tasks assigned to each be during the restore 
process, the default value is 3.
+
 #### `max_backup_restore_job_num_per_db`
 
 Default: 10
diff --git a/docs/zh-CN/docs/admin-manual/config/fe-config.md 
b/docs/zh-CN/docs/admin-manual/config/fe-config.md
index ec4d759be35..c0f04e0231a 100644
--- a/docs/zh-CN/docs/admin-manual/config/fe-config.md
+++ b/docs/zh-CN/docs/admin-manual/config/fe-config.md
@@ -2586,6 +2586,26 @@ SmallFileMgr 中存储的最大文件数
 
 备份作业的默认超时时间
 
+#### `backup_upload_task_num_per_be`
+
+默认值:3
+
+是否可以动态配置:true
+
+是否为 Master FE 节点独有的配置项:true
+
+备份过程中,分配给每个be的upload任务最大个数,默认值为3个。
+
+#### `restore_download_task_num_per_be`
+
+默认值:3
+
+是否可以动态配置:true
+
+是否为 Master FE 节点独有的配置项:true
+
+恢复过程中,分配给每个be的download任务最大个数,默认值为3个。
+
 #### `max_backup_restore_job_num_per_db`
 
 默认值:10
diff --git a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java 
b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
index 722c2303636..0bf8da05c27 100644
--- a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
+++ b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
@@ -2045,5 +2045,11 @@ public class Config extends ConfigBase {
     */
     @ConfField
     public static int fe_thrift_max_pkg_bytes = 20000000;
+
+    @ConfField(mutable = true, masterOnly = true)
+    public static int backup_upload_task_num_per_be = 3;
+
+    @ConfField(mutable = true, masterOnly = true)
+    public static int restore_download_task_num_per_be = 3;
 }
 
diff --git a/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java 
b/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java
index dc0d8ec7018..b15af91cead 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/backup/BackupJob.java
@@ -35,6 +35,7 @@ import org.apache.doris.catalog.Table;
 import org.apache.doris.catalog.TableIf.TableType;
 import org.apache.doris.catalog.Tablet;
 import org.apache.doris.catalog.View;
+import org.apache.doris.common.Config;
 import org.apache.doris.common.io.Text;
 import org.apache.doris.common.util.TimeUtils;
 import org.apache.doris.task.AgentBatchTask;
@@ -581,8 +582,7 @@ public class BackupJob extends AbstractJob {
         for (Long beId : beToSnapshots.keySet()) {
             List<SnapshotInfo> infos = beToSnapshots.get(beId);
             int totalNum = infos.size();
-            // each backend allot at most 3 tasks
-            int batchNum = Math.min(totalNum, 3);
+            int batchNum = Math.min(totalNum, 
Config.backup_upload_task_num_per_be);
             // each task contains several upload sub tasks
             int taskNumPerBatch = Math.max(totalNum / batchNum, 1);
             LOG.info("backend {} has {} batch, total {} tasks, {}", beId, 
batchNum, totalNum, this);
diff --git a/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java 
b/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java
index 35e3a0fc478..9720f4e3bd0 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/backup/RestoreJob.java
@@ -1276,8 +1276,7 @@ public class RestoreJob extends AbstractJob {
                 for (Long beId : beToSnapshots.keySet()) {
                     List<SnapshotInfo> beSnapshotInfos = 
beToSnapshots.get(beId);
                     int totalNum = beSnapshotInfos.size();
-                    // each backend allot at most 3 tasks
-                    int batchNum = Math.min(totalNum, 3);
+                    int batchNum = Math.min(totalNum, 
Config.restore_download_task_num_per_be);
                     // each task contains several upload sub tasks
                     int taskNumPerBatch = Math.max(totalNum / batchNum, 1);
                     LOG.debug("backend {} has {} batch, total {} tasks, {}",


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

Reply via email to