MRS数据源使用概述
MRS集群简介
翼MapReduce(MRS)是一个基于开源Hadoop生态环境而运行的大数据集群,对外提供大容量数据的存储和分析能力,可解决用户的数据存储和处理需求。有关MRS服务的详细信息,请参考《翼MapReduce服务用户操作指南》。
用户可以将海量业务数据,存储在MRS的分析集群,即使用Hive/Spark组件保存。Hive/Spark的数据文件则保存在HDFS中。DWS支持在相同网络中,配置一个DWS集群连接到MRS集群,然后将数据从HDFS中的文件读取到DWS。
使用流程
从MRS导入数据到集群流程如下:
- 前提条件
a. 创建一个MRS集群,具体操作步骤请参见《MapReduce服务用户操作指南》中“购买自定义集群”章节。
b. 创建一个HDFS外表,外表通过外部服务器的接口,从MRS集群查询数据。
具体操作步骤请参见《数据仓库服务数据库开发指南》中“导入数据 > 从MRS导入数据到集群”章节。
说明同一个网络下可以有多个MRS数据源, 但是DWS集群每次只能和一个MRS集群建立连接。
- 在DWS集群创建一个MRS数据源连接,具体操作步骤请参见下文 创建MRS数据源连接。
- 使用MRS数据源导入数据到集群,具体操作步骤请参见《数据仓库服务数据库开发指南》中的“导入数据 > 从MRS导入数据到集群”章节。
- (可选)当MRS集群的HDFS配置发生变更时,在DWS服务中,需要执行MRS数据源配置的更新操作,详情请参见下文 更新MRS数据源配置。
创建MRS数据源连接
操作场景
DWS从MRS的HDFS读取数据前,需要先创建一个MRS数据源连接,作为DWS集群与MRS集群的数据通道。
对系统的影响
- 一个DWS集群在创建MRS数据源连接时,不能同时创建两个连接。
- 创建MRS数据源连接时,系统默认自动为DWS集群和MRS集群的安全组增加出规则和入规则,允许相同子网中节点的访问。
- 启用Kerberos认证的MRS集群,系统会自动增加一个类型为“机机”的用户,属于“supergroup”用户组。
前提条件
- DWS集群已创建好,并记录集群所在的虚拟私有云和子网。
- 创建MRS数据源连接需要创建MRS集群类型为分析集群。
操作步骤
- 登录MRS控制台。
- 打开MRS管理控制台,创建MRS集群。
创建集群时,请按要求配置以下参数,其他配置无特别要求,具体操作请参见《MapReduce服务用户操作指南》中的“自定义创建集群”章节:
- MRS集群的虚拟私有云需要和DWS集群相同。
- MRS集群版本,主推1.9.2、2.1.0、3.0.2-LTS、3.1.2-LTS 4个版本。
说明
8.1.1.300及以上版本集群,MRS集群支持连接1.6.*、1.7.*、1.8.*、1.9.*、2.0.*、3.0.*、3.1.*及以上版本(“*”代表的是数字)。
8.1.1.300以下版本集群,MRS集群支持连接1.6.*、1.7.*、1.8.*、1.9.*、2.0.*版本(“*”代表的是数字)。
-
组件选择,需要选择Hadoop组件。
如果已有符合如上条件的MRS集群,则可跳过此步骤。
- 登陆DWS管理控制台。
- 在DWS管理控制台,选择“集群 > 专属集群”。
- 在集群列表中单击指定集群的名称,进入“集群详情”页面。
- 在左侧导航栏,选择“数据源>MRS数据源”页签。
- 单击“创建MRS数据源连接”,填写配置参数。
MRS连接公共参数说明
参数名 | 说明 |
---|---|
数据源名称 | 对应DWS数据库server名称,包含小写字母、数字或者下划线,且必须以小写字母开头,长度为3到63个字符。 |
配置方式 | 表示配置时系统获取文件使用的方式: MRS用户:配置MRS manager用户/密码,系统登录MRS manager自动下载配置文件及认证文件。参数说明详情请参见表 MRS用户方式参数配置说明。 文件上传: 自行在MRS manager下载配置文件,通过上传配置文件的方式配置,该方式适用于开启Kerberos认证。参数说明详情请参见表 文件上传方式参数配置说明。 须知:选择文件上传方式时,确保MRS和DWS集群网络互通。 |
数据库 | 数据源所在数据库。 |
描述 | 表示此连接的说明信息。 |
MRS用户方式参数配置说明
参数名 | 说明 |
---|---|
MRS数据源 | 下拉框选择DWS可连接的MRS集群。默认显示当前用户可连接的,即与当前DWS集群在相同虚拟私有云和子网下且为可用状态的自定义型、混合型以及分析型MRS集群。 选择一个MRS集群后,将自动显示已选择的MRS是否启用了Kerberos认证。单击“查看MRS集群”可进入MRS查看该MRS集群信息。 如果“MRS数据源”下拉框为空,用户可以单击“创建MRS集群”进行创建。 |
MRS用户 | DWS集群连接MRS集群时使用的用户名。 |
用户密码 | 填写连接用户的密码。如果用户密码被修改,则需要重新创建连接。 须知 用户密码必须成功登录过MRS Manager,新用户使用初始密码第一次登录MRS Manager时会提示修改密码,这种情况会导致配置MRS数据源失败。 |
使用机机账号 | 开启后,会自动在MRS创建一个名称为dws的机机账号用于后续dws数据库和MRS的交互,该机机账号固定为supergroup组,拥有所有权限; 若关闭,则直接将配置的人机用户用于dws数据库和MRS交互,需要保证用户拥有数据权限,否则在使用数据源时会提示文件不存在。 |
文件上传方式参数配置说明
参数名 | 说明 |
---|---|
认证凭据 | 用户keytab文件。在MRS manager下载的用户认证凭据文件,文件名称格式为:用户名称_时间戳_keytab.tar: MRS 2.x 及之前版本下载路径 :系统设置>用户管理>更多>下载认证凭据 MRS 3.x 及之后版本下载路径 :系统>权限>用户>更多>下载认证凭据 |
客户端配置文件 | 包含HDFS、Hive、hosts的客户端配置文件,下载客户端时“客户端类型”需选择“仅配置文件”: MRS 2.x 及之前版本下载路径 :服务管理>下载客户端 MRS 3.x 及之后版本下载路径 :主页>更多>下载客户端 |
- 单击“提交”保存连接。
创建连接需要一段时间,此时“配置状态”显示为“创建中”,成功后在MRS数据源列表中可看到已创建的连接,且状态为“可用”。
说明
在“操作”列,可以单击“更新配置”,更新当前连接的“MRS集群状态”和“配置状态”。在更新配置时,无法创建新的连接,且会检查安全组规则是否正常并自助修复。具体请参见下文 更新MRS数据源配置。
在“操作”列,可以单击“删除”将不再使用的连接删除释放。删除连接时,不会自动删除安全组规则,请根据需要手工删除。
安全组规则若不删除,DWS集群中的节点与MRS集群中的节点网络仍是互通的。如果用户对网络安全要求较严格,建议手动删除安全组规则。
更新MRS数据源配置
操作场景
MRS的HDFS集群参数配置变更时,可能造成DWS集群无法从HDFS集群导入数据。使用HDFS集群导入数据前,需要执行MRS数据源配置的更新操作。
前提条件
DWS集群已创建MRS数据源连接。
对系统的影响
更新MRS数据源连接时,DWS集群会自动重启并无法提供服务。
操作步骤
- 在DWS管理管制台,选择“集群 > 专属集群”。
- 在集群列表,单击指定集群的名称,然后单击“MRS数据源”。
- 在MRS数据源列表中,选中需要更新的MRS数据源,在“操作”列中,单击“更新配置”。
更新当前连接的“MRS集群状态”和“配置状态”。在更新配置时,无法创建新的连接,且会检查安全组规则是否正常并自助修复。参数说明如下所示:
参数说明
参数名 | 参数解释 |
---|---|
dfs.client.read.shortcircuit | 是否开启本地读。 |
dfs.client.read.shortcircuit.skip.checksum | 本地读时是否跳过数据校验。 |
dfs.client.block.write.replace-datanode-on-failure.enable | 向HDFS写数据块发生失败时,是否替换新的节点作为副本存储位置。 |
dfs.encrypt.data.transfer | 是否开启数据加密。设置为“true”表示加密,默认不加密。 说明 l 此参数仅对启用Kerberos认证的集群有效。 l 仅当hadoop.rpc.protection设置为privacy时使用。 |
dfs.encrypt.data.transfer.algorithm | 指定密钥传输的加密解密算法。 只有在dfs.encrypt.data.transfer配置项设置为“true”,此参数才会生效。 默认值为“3des”,表示采用3DES算法进行加密。 |
dfs.encrypt.data.transfer.cipher.suites | 指定实际存储数据传输的加密解密算法。 如果不指定此参数,则使用“dfs.encrypt.data.transfer.algorithm”参数指定的加密算法进行数据加密。默认值为“AES/CTR/NoPadding”。 |
dfs.replication | 默认数据副本个数。 |
dfs.blocksiz | 默认数据块大小。 |
hadoop.security.authentication | 安全认证模式。 |
hadoop.rpc.protection | RPC通信保护模式。 默认值:安全模式(启用Kerberos认证):privacy 普通模式(未启用Kerberos认证):authentication 须知 “authentication”:只进行认证,不加密。 “integrity”:进行认证和一致性校验。 “privacy”:进行认证、一致性校验、加密。 |
dfs.domain.socket.path | 本地使用的Domain socket路径。 |