本文介绍如何将CDH中本地HDFS的数据迁移到文件存储HDFS版,实现存储计算分离。
前提条件
- 已开通文件存储HDFS版服务并创建文件系统实例和挂载点。具体操作,请参见文件存储HDFS版快速入门。
- 已在阿里云上创建ECS实例并安装CDH6集群。具体操作,请参见CDH官方文档。
背景信息
步骤一:配置文件存储HDFS版
- 登录CDH6的Cloudera Manager管理页面。
- 配置文件存储HDFS版实现类。
- 配置mapreduce.application.classpath。
- 配置文件存储HDFS版Java SDK。
- 部署客户端配置。
- 返回主页页面,选择状态页签。在左侧集群组件中,单击HDFS右侧的
图标,进入过期配置页面。
- 在过期配置页面,单击重启过时服务。
- 在重启过时服务页面,选中重新部署客户端配置后,单击立即重启。
- 在服务全部重启完成,并重新部署客户端配置后,单击完成。
- 返回主页页面,选择状态页签。在左侧集群组件中,单击HDFS右侧的
(可选)步骤二:HBase快照迁移
如果原HDFS集群中已部署HBase服务且存在业务数据,您需要将HBase中的数据以快照方式迁移到文件存储HDFS版。
本文以HBase服务的两个模拟表(mock_table_0和mock_table_1),每个表的中的模拟数据有10万条为例,介绍将HBase中的数据以快照方式迁移到文件存储HDFS版。
hbase(main):001:0> list
TABLE
mock_table_0
mock_table_1
2 row(s)
Took 0.4213 seconds
=> ["mock_table_0", "mock_table_1"]
hbase(main):002:0> count 'mock_table_1'
Current count: 1000, row: 001637311398
.....
Current count: 100000, row: 991637311398
100000 row(s)
Took 4.3696 seconds
=> 100000
hbase(main):003:0> count 'mock_table_0'
Current count: 1000, row: 001637311398
......
Current count: 100000, row: 991637311398
100000 row(s)
Took 4.0691 seconds
=> 100000