文档首页/ MapReduce服务 MRS/ 组件操作指南(LTS版)/ 使用HBase/ HBase常见问题/ 结束BulkLoad客户端程序,导致作业执行失败
更新时间:2024-07-02 GMT+08:00
分享

结束BulkLoad客户端程序,导致作业执行失败

问题

执行BulkLoad程序导入数据时,如果结束客户端程序,为什么有时会导致已提交的作业执行失败?

回答

BulkLoad程序在客户端启动时会生成一个partitioner文件,用于划分Map任务数据输入的范围。此文件在BulkLoad客户端退出时会被自动删除。一般来说当所有Map任务都启动运行以后,退出BulkLoad客户端也不会导致已提交的作业失败。但由于Map任务存在重试机制和推测执行机制;Reduce任务下载一个已运行完成的Map任务的数据失败次数过多时,Map任务也会被重新执行。如果此时BulkLoad客户端已经退出,则重试的Map任务会因为找不到partitioner文件而执行失败,导致作业执行失败。因此,强烈建议BulkLoad程序在数据导入期间不要结束客户端程序。

相关文档