上传应用数据至MRS集群
MRS集群处理的数据源通常来源于OBS文件系统或集群内的HDFS文件系统,用户可以基于MRS管理控制台和OBS客户端对OBS数据进行浏览、管理和使用,也可以将OBS的数据导入集群的HDFS系统后进行处理。
通常情况下,推荐将业务数据直接放置在OBS文件系统中。OBS文件系统的数据迁移至HDFS时,传输文件速率会随着文件大小的增大而变慢,适合数据量小的场景下使用。
操作视频
本视频为您介绍如何将数据导入MRS集群的HDFS文件系统中。
因不同版本操作界面可能存在差异,相关视频供参考,具体以实际环境为准。
上传本地数据至OBS
上传集群节点内本地数据至HDFS
如需将MRS集群内节点本地的程序或者业务数据上传至HDFS中,可通过HDFS客户端进行操作。
- 安装MRS集群客户端。
具体操作可参考安装MRS集群客户端。
MRS集群中默认安装了一个客户端用于作业提交,也可直接使用该客户端。MRS 3.x及之后版本客户端默认安装路径为Master节点上的“/opt/Bigdata/client”,MRS 3.x之前版本为Master节点上的“/opt/client”。
- 使用MRS集群客户端安装用户登录客户端所在的节点。
具体操作可参考登录MRS集群节点。
- 进入客户端安装目录并加载环境变量。
source /opt/Bigdata/client/bigdata_env
- 对于开启了Kerberos认证的安全模式集群,需执行以下命令进行用户认证(第一次登录的用户需要修改密码),普通模式集群可跳过本步骤。
需提前在MRS集群中创建一个具有HDFS操作权限的用户,请参见创建MRS集群用户。
kinit 具有HDFS操作权限的业务用户名
- 执行以下命令在HDFS上创建文件夹。
hdfs dfs -mkdir /tmp/mydir
- 上传节点本地文件至HDFS目标文件夹内。
例如将节点本地的“/tmp/testAccess.txt”文件上传到HDFS的“/tmp/mydir”目录下。
hdfs dfs -put /tmp/testAccess.txt /tmp/mydir
从OBS导入数据至HDFS
MRS集群创建后,用户可通过管理控制台快速将OBS并行文件系统中的文件导入至集群HDFS中。
- 登录MRS管理控制台。
- 选择“现有集群”,单击集群名称进入集群信息页面。
若MRS集群为开启Kerberos认证的安全集群,需先完成IAM用户同步(在集群详情页的“概览”页签,单击“IAM用户同步”右侧的“同步”进行IAM用户同步),首次同步完成后,建议等待5分钟以后再进行下一步操作。
- 单击“文件管理”,进入 页面。
- 选择“HDFS文件列表”。
图2 HDFS文件列表
- 进入待导入数据的存储目录。
可以单击“新建”,创建新的文件夹目录,也可以选择在HDFS中已存在的文件夹。
- 单击“导入数据”,正确配置HDFS和OBS路径。
配置OBS或者HDFS路径时,单击“浏览”并选择文件目录,然后单击“确定”。图3 导入数据
- OBS路径地址说明:
- 必须以“obs://”开头。
- 不支持导入KMS加密的文件或程序。
- 不支持导入空的文件夹。
- 目录和文件名称可以包含中文、字母、数字、中划线和下划线,但不能包含;|&>,<'$*?\特殊字符。
- 目录和文件名称不能以空格开头或结尾,中间可以包含空格。
- OBS全路径长度小于等于255字符。
- HDFS路径地址说明:
- 目录和文件名称可以包含中文、字母、数字、中划线和下划线,但不能包含;|&>,<'$*?\:特殊字符。
- 目录和文件名称不能以空格开头或结尾,中间可以包含空格。
- HDFS全路径长度小于等于255字符。
- OBS路径地址说明:
- 单击“确定”。
文件上传进度可在“文件操作记录”中查看,系统将数据导入操作生成一个Distcp作业处理,也可在 中查看作业执行状态。
从HDFS导出数据至OBS
MRS集群创建后,用户可通过管理控制台快速将集群HDFS中的指定文件导出到OBS中。
- 登录MRS管理控制台。
- 选择“现有集群”,选中一集群并单击集群名进入集群基本信息页面。
若MRS集群为开启Kerberos认证的安全集群,需先完成IAM用户同步(在集群详情页的“概览”页签,单击“IAM用户同步”右侧的“同步”进行IAM用户同步),首次同步完成后,建议等待5分钟以后再进行下一步操作。
- 单击“文件管理”,进入 页面。
- 选择“HDFS文件列表”。
- 进入数据存储目录。
- 单击“导出数据”,配置OBS和HDFS路径。配置OBS或者HDFS路径时,单击“浏览”并选择文件目录,然后单击“确定”。
图4 导出数据
当导出文件夹到OBS系统时,在OBS路径下,将增加一个标签文件,文件命名为“folder name_$folder$”。请确保导出的文件夹为非空文件夹,如果导出的文件夹为空文件夹,OBS无法显示该文件夹,仅生成一个命名为“folder name_$folder$”的文件。
- 单击“确定”。
文件上传进度可在“文件操作记录”中查看,系统将数据导入操作生成一个Distcp作业处理,也可在 中查看作业执行状态。