大数据迁移(简单案例)(41 )

大数据迁移:node

所谓的大数据迁移就是把某个节点上的数据(或者几个节点上的数据)分别拷贝到不一样数据节点上的过程.bash


就像我在的公司就是这样作的,在CDHhadoop的版本中,一个命令就能完成上面的大数据迁移的全部事情.tcp

例如:oop

现有的机器:大数据

hadoop1(n1:namenode)spa

hadoop2(d1:datanode)日志

hadoop3(d2:datanode)hadoop

hadoop4(d3:datanode)get

新增的机器:it

hadoop5(d4:datanode)

hadoop6(d5:datanode)

hadoop7(d6:datanode)

这里咱们要把现有的机器某台机器(这里机器名:hadoop2,由于这几台机器的数据是同样的)上的数据分别拷贝到新增的机器中(hadoop5,hadoop6,hadoop7)中.

举例:

现有的机器hadoop1中的数据文件(单位:byte):

199884219068  /hive/warehouse/data1

135503186196  /hive/warehouse/data2

146310003399  /hive/warehouse/data3

456891836274  /hive/warehouse/data4

123959449467  /hive/warehouse/data5

数据迁移:

hadoop distcp hdfs://hadoop1:8020$dir hdfs://hadoop5:8020/hive/warehouse/

注意:这里为何我只拷贝到hadoop5中呐?是由于distcp这个命令会自动把数据拷贝到新增的不一样机器上.

本身总结:(在拷贝过程当中,若是数据文件名称已经存在,则distcp命令不会覆盖原有文件,就会跳过该文件的拷贝.)


在这里我写了一个简单的脚本(distcp.sh),来进行数据迁移,脚本内容以下:

#!/bin/bash

load_src=('/hive/warehouse/data1' '/hive/warehouse/data2' '/hive/warehouse/data3' '/hive/warehouse/data4' '/hive/warehouse/data5')

for src in "${load_src[@]}"

do

hadoop distcp hdfs://hadoop1:8020$src hdfs://hadoop5:8020/hive/warehouse/ >>/hadoop_tmp/log/distcp.log 2>>&1

done

注意:在运行脚本中的时候,要关注一下hadoop集群情况,以避免数据量太大,致使集群宕机.还有日志(/hadoop_tmp/log/distcp.log)

能够用一下命令查看集群情况:

查看集群使用情况或其余信息:

hadoop dfsadmin -report

查看各个节点的状态(status):

查看JobTracker(status)

hadoop mrhaadmin -getServiceState jt1

查看NameNode(status)

hdfs haadmin -getServiceState nn1

注意:在写脚本的时候,注意拷贝机器的目录,例如:hdfs://hadoop5:8020/hive/warehouse/这个目录,

    由于在源目录中,好比想拷贝某个文件夹下的名称,就要想对应的在目标目录上填上这个目录,否则就只会拷贝在/hive/warehouse/中.

 

举例:

hadoop2下的/hive/warehouse/data1是一个文件夹,我想拷贝下面的文件file1.

distcp1.sh脚本内容:

#!/bin/bash

load_src=('/hive/warehouse/data1/file1' '/hive/warehouse/data1/file2')

for src in "${load_src[@]}"

do

####截取不一样文件夹的名称

tmp_src=${src:16:5}

####截取结果:data1

hadoop distcp hdfs://hadoop1:8020$src hdfs://hadoop5:8020/hive/warehouse/$tmp_src/ >>/hadoop_tmp/log/distcp.log 2>>&1

done

注意:仍是注意查看集群状态,还有日志(/hadoop_tmp/log/distcp.log).


                                                                                                                                Name:Xr

                                                                                                                                Date:2014-05-11 21:01

相关文章
相关标签/搜索