在 Apache Sqoop 中,导入数据时使用的 --target-dir 参数具体含义是什么?它负责完成哪一步操作?
考察说明
考查对 Sqoop 导入命令核心参数的理解,尤其是输出目录的指定方式。
回答思路
- 【回答框架 1】--target-dir 是 Sqoop 导入命令中用于指定 HDFS 上目标目录的参数,导入的数据文件(如 part-m-00000)会被写入该目录。
- 【回答框架 2】当使用 --target-dir 时,Sqoop 不会自动创建目录,如果目录已存在会报错,通常需要结合 --delete-target-dir 参数来覆盖已有目录。
- 【回答框架 3】该参数是导入操作中必填或常用的参数,区别于 --warehouse-dir,后者用于指定父目录,Sqoop 会自动创建子目录。
- 【回答框架 4】在导入时,--target-dir 决定了最终数据的存放路径,使用时应确保目录不存在或提前删除,否则任务会失败。
- 【关键点 1】--target-dir 指定 HDFS 目标目录,数据文件写入该目录下。
- 【关键点 2】目录已存在时导入会失败,需用 --delete-target-dir 先删除。
- 【关键点 3】与 --warehouse-dir 不同,--target-dir 是直接指定最终目录。
- 【关键点 4】实际使用中通常会结合 --delete-target-dir 实现覆盖导入。
- 【易错点 1】不要把 --target-dir 与 --warehouse-dir 混淆,前者是最终目录,后者是父目录。
- 【易错点 2】忘记处理已存在的目录会导致导入任务报错。