所有文档

          对象存储 BOS

          任务进度恢复

          status.log 里可以看到相应的文件列表具体的迁移进度,如果client崩溃了可以从日志中找到相应的断点恢复迁移,进度恢复是根据任务列表(list)的粒度来进行的。

          示例:

          client.properties文件配置:

          taskList=/home/work/list/task_list

          task_list文件内容:

          /home/work/list/object_list1
          /home/work/list/object_list2
          # /home/work/list/object_list3

          object_list1文件内容:

          bucket1 obj1
          bucket1 obj2
          bucket1 obj3
          #bucket1 obj4
          bucket1 obj5

          object_list2文件内容:

          bucket1 obj21
          #bucket1 obj22
          bucket1 obj23
          bucket1 obj24
          bucket1 obj25
          bucket1 obj26

          status.log文件内容:

          2015-12-31 17:13:42.013 /home/work/list/object_list1 2/-1
          2015-12-31 17:13:45.014 /home/work/list/object_list2 3/-1
          2015-12-31 17:13:48.014 /home/work/list/object_list2 4/6
          2015-12-31 17:13:51.014 /home/work/list/object_list1 5/5 finished
          2015-12-31 17:13:53.014 /home/work/list/object_list2 4/6
          1. object_list1 2/-1 表示已经处理完了 object_list1 这个列表的第2行,-1 表示这个文件还没有读完不知道有多少行,如果这个时候崩溃了,由于采用了并发,所以并不知道具体是完成了列表中的哪几个文件的迁移。
          2. 如果需要从某个进度位置重新开始任务,需要建立新的list文件,使用新的配置重新启动client。首先要根据status.log文件内容找出还有哪些object_list文件的数据没有迁移完,例如object_list2还没有迁移完,就将其放到新的task_list_continue文件里,并修改配置文件,示例如下:

          修改client.properties文件:

          taskList=/home/work/list/task_list_continue

          修改task_list_continue 文件:

          /home/work/list/object_list2

          redo重传

          当所有需要迁移的列表处理完之后,需要对迁移失败或者迁移过程当中出现问题的文件进行重传。 从迁移日志中整理出重传的列表:redo和unsent日志文件中的文件可以使用KEEP_DESTITNATION的迁移策略,但是对于failed的文件列表,需要考虑使用FORCE_OVERWRITE策略进行迁移,因为可能是因为迁移出现了数据错误。

          上一篇
          日志
          下一篇
          异常处理