【发布时间】:2015-02-05 07:59:13
【问题描述】:
我是 Hadoop 管理新手 :)
我有一个 8 个节点的 Apache Hadoop 2.4.1 集群,使用了 16TB DFS(在任何 xml 文件中都找不到复制因子),带有 MySQL 元存储的 Hive 0.13。
目标:将集群上的数据备份到 NFS 驱动器,卸载集群,安装一些其他发行版(Cloudera、Hortonworks)并将数据从 NFS 驱动器重新加载到这个新集群。
有两个 956GB(大约 90 亿行)和 32Gb(几百万行)的 Hive 表以及其他一些较小的表。
疑虑/查询:
- 如何在 NFS 驱动器上备份整个集群?目前我有一台安装了 NFS 驱动器的独立机器(不是集群的一部分)
- 最粗暴的方法是将表导出到 csv/tsv 文件到 NFS 驱动器,并在新集群准备就绪时将它们加载到新集群中,但是将这些大表导出到 csv/tsv 让我感到不舒服,但我想不出其他方式
- distcp 根据我的理解在 HDFS 级别工作,所以我不确定是否可以使用它更快地从 HDFS 复制到 NFS 和 NFS 到新的 HDFS。这是因为我还需要备份 Hive 元数据,然后使其与新发行版一起使用,这可能是不可能的
我应如何进行此迁移或至少将数据从 HDFS 传输到 NFS 并返回?
【问题讨论】: