
# 典型场景：从HDFS/OBS导出数据到SFTP服务器
#### 操作场景
该任务指导用户使用Loader将数据从HDFS/OBS导出到SFTP服务器。
#### 前提条件
- 创建或获取该任务中创建Loader作业的业务用户和密码。
- 确保用户已授权访问作业执行时操作的HDFS/OBS目录和数据。
- 获取SFTP服务器使用的用户和密码，且该用户具备SFTP服务器数据导出目录的写入权限。
- 检查磁盘空间，确保没有出现告警且余量满足导入、导出数据的大小。
- 使用Loader从HDFS/OBS导出数据时，确保HDFS/OBS数据源的输入路径目录名、输入路径的子目录名及子文件名不能包含特殊字符/\\"':;,中的任意字符。
- 如果设置的任务需要使用指定YARN队列功能，该用户需要已授权有相关YARN队列的权限。
- 设置任务的用户需要获取该任务的执行权限，并获取该任务对应的连接的使用权限。
 
#### 操作步骤
**设置作业基本信息**
1. 登录"Loader WebUI"界面。 
   1. 登录FusionInsight Manager系统，具体请参见[访问FusionInsight Manager（MRS 3.x及之后版本）](https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_2124.html)。
   
   2. 选择"集群 \> *待操作集群名称* \> 服务 \> Loader"。
   
   3. 单击"LoaderServer(*节点名称* ，主)"打开"Loader WebUI"界面。
      图1Loader WebUI界面   
      ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0000001407248238.png) 
   
   
   
   
2. 单击"新建作业"，进入"基本信息"界面，创建作业基本信息。 
   图2基本信息界面   
   ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0264266206.png)
   1. 在"名称"中输入作业的名称。
   
   2. 在"类型"中选择"导出"。
   
   3. 在"组"中设置作业所属组，默认没有已创建的组，单击"添加"创建一个新的组，输入组的名称，单击"确定"保存。
   
   4. 在"队列"中选择执行该作业的YARN队列。默认值"root.default"。
   
   5. 在"优先级"中选择执行该作业的YARN队列优先级。默认值为"NORMAL"。可选值为"VERY_LOW"、"LOW"、"NORMAL"、"HIGH"和"VERY_HIGH"。
   
   
   
   
3. 在"连接"区域，单击"添加"新建一个连接，在"连接器"中选择"sftp-connector"，单击"添加"，输入配置连接参数，单击"测试"验证连接是否可用，待提示"测试成功"后单击"确定"。Loader支持配置多个SFTP服务器操作数据，单击"添加"可增加多行SFTP服务器的配置信息。 
   表1连接参数 
   | 参数名        | 说明             | 示例            |
   |:---|:---|:---|
   | 名称         | SFTP服务器连接的名称。  | sftpName      |
   | Sftp服务器的IP | SFTP服务器的IP地址。  | 10.16.0.1     |
   | Sftp服务器端口  | SFTP服务器的端口号。   | 22            |
   | Sftp用户名    | 访问SFTP服务器的用户名。 | root          |
   | Sftp密码     | 访问SFTP服务器的密码。  | xxxx          |
   | Sftp公钥     | Sftp服务器公钥。     | OdDt/yn...etM |
      
   ![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
   配置多个SFTP服务器时，HDFS/OBS的数据将分为多份随机导出到各个SFTP服务器。
   **设置数据源信息**
   
   
4. 单击"下一步"，进入"输入设置"界面，在"源文件类型"中选择"HDFS"，设置数据源信息。 
   表2数据来源配置参数 
   | 参数名      | 解释说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 示例         |
   |:---|:---|:---|
   | 输入目录     | 从HDFS/OBS导出时的输入路径。 说明： 路径参数可以使用宏定义，具体请参考[配置项中使用宏定义](https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_1153.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                           | /user/test |
   | 路径过滤器    | 配置通配符对源文件的输入路径包含的目录进行过滤。"输入目录"不参与过滤。配置多个过滤条件时使用","隔开，配置为空时表示不过滤目录。不支持正则表达式过滤。 - "?"匹配单个字符。  - "\*"配置多个字符。  - 在匹配条件前加"\^"表示取反，即文件过滤。                                                                                                                                       | \*         |
   | 文件过滤器    | 配置通配符对源文件的输入文件名进行过滤。配置多个过滤条件时使用","隔开。不能配置为空。不支持正则表达式过滤。 - "?"匹配单个字符。  - "\*"配置多个字符。  - 在匹配条件前加"\^"表示取反，即文件过滤。                                                                                                                                                             | \*         |
   | 文件类型     | 文件导入类型： - "TEXT_FILE"：导入文本文件并保存为文本文件  - "SEQUENCE_FILE"：导入文本文件并保存在"sequence file"文件格式  - "BINARY_FILE"：以二进制流的方式导入文件，可以导入任何格式的文件，不对文件做任何处理。   说明： 文件类型选择"TEXT_FILE"或"SEQUENCE_FILE"导入时，Loader会自动根据文件的后缀选择对应的解压方法，对文件进行解压。 | TEXT_FILE  |
   | 文件分割方式   | 选择按文件或大小分割源文件，作为数据导出的MapReduce任务中各个map的输入文件。 - 选择"FILE"，表示按文件分割源文件，即每个map处理一个或多个完整的源文件，同一个源文件不可分配至不同map，完成数据导入后保持源文件的目录结构。  - 选择"SIZE"，表示按大小分割源文件，即每个map处理一定大小的输入文件，同一个源文件可分割至多个map，数据保存至输出目录时保存的文件数与map数量相同，文件名格式为"import_part_xxxx"，"xxxx"为系统生成的随机数，具有唯一性。                                                                                                                | FILE       |
   | Map数     | 配置数据操作的MapReduce任务中同时启动的Map数量。不可与"Map数据块大小"同时配置。参数值必须小于或等于3000，建议以SFTP服务器的CPU的核数作为其取值。 说明： 为了提高导入数据速度，需要确保以下条件： - 每个Map连接时，相当于一个客户端连接，因此需要确保SFTP服务器最大连接数大于Map数量。  - 确保SFTP服务器上的磁盘IO或网络带宽都未达到上限。                                                                                                                            | 20         |
   | Map数据块大小 | 配置数据操作的MapReduce任务中启动map所处理的数据大小，单位为MB。参数值必须大于或等于100，建议配置值为1000。不可与"Map数"同时配置。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | -          |
      
   **设置数据转换**
   
   
5. 单击"下一步"，进入"转换"界面，设置数据传输过程中的转换操作。算子的选择和参数设置具体请参考[算子帮助](https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_1119.html)及[表3]。
   
    表3算子输入、输出参数设置 
   | 输入类型     | 输出类型 |
   |:---|:---|
   | CSV文件输入  | 文件输出 |
   | HTML输入   | 文件输出 |
   | 固定宽度文件输入 | 文件输出 |
      
   图3算子操作方法示意   
   ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0264266071.png)
   **设置数据保存信息并运行作业**
   
   
6. 单击"下一步"，进入"输出设置"界面，设置数据保存方式。 
   表4输出设置参数 
   | 参数名    | 解释说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 示例            |
   |:---|:---|:---|
   | 输出路径   | SFTP服务器中导出文件的路径或者文件名，如果连接器配置多个地址此处可对应使用";"分隔多个路径或者文件名，数量需要与连接器中服务器的数量一致。 说明： 路径参数可以使用宏定义，具体请参考[配置项中使用宏定义](https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_1153.html)。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | /opt/tempfile |
   | 文件操作方式 | 数据导入时的操作行为。全部数据从输入路径导入到目标路径时，先保存在临时目录，然后再从临时目录复制转移至目标路径，任务完成时删除临时路径的文件。转移临时文件存在同名文件时有以下行为： - "OVERRIDE"：直接覆盖旧文件。  - "RENAME"：重命名新文件。无扩展名的文件直接增加字符串后缀，有扩展名的文件在文件名增加字符串后缀。字符串具有唯一性。  - "APPEND"：在旧文件尾部合并新文件内容。合并操作只是简单的追加，不保证追加文件是否可以使用。例如文本文件可合并，压缩文件合并后可能无法使用。  - "IGNORE"：保留旧文件，不复制新文件。  - "ERROR"：转移过程中出现同名文件时任务将停止执行并报错，已转移的文件导入成功，同名的文件及未转移的文档导入失败。   | OVERRIDE      |
   | 编码类型   | 导出文件的编码格式，如UTF-8。导出文本文件时才能配置。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | UTF-8         |
   | 压缩     | 使用SFTP协议导入数据时，是否开启压缩传输功能以减小带宽使用。 - 选择"true"，表示开启压缩。  - 选择"false"，表示关闭压缩。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | true          |
      
   
   
7. 单击"保存并运行"，开始保存并运行作业。 
   **查看作业完成情况**
   
   
8. 进入"Loader WebUI"界面，待"状态"显示"成功"则说明作业完成。 
   图4查看作业   
   ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0264265452.png)
   
   
 
