数据移植选项

Oracle 提供了多种用于迁移 HDFS 数据、使用 Oracle 数据传输设备批量数据迁移以及群集元数据迁移的选项。

HDFS 迁移

您可以采用几种不同的方式将数据从外部 HDFS 迁移到Oracle Cloud Infrastructure

主要考虑因素是需要移动多少数据,在移动数据时所需的时间和资源中,是否可以通过网络实际移动数据"。如果有足够的带宽和源群集资源来支持它,则两个选项相关:

  • DistCp 到对象存储
  • DistCp 到 HDFS

对于对象存储副本,只有源集群需要 Internet 连接,以及 HDFS 连接器(Apache Hadoop)或 S3 兼容性设置(Cloudera 和 Hortonworks)。如果使用 S3 兼容性,则只能将数据复制到租户的主区域中。

在满足先决条件后,您可以通过对源 HDFS 目标运行 DistCp 将数据传输到对象存储桶来传输数据。以下语法演示了“美国东部”(Ashburn)区域“对象存储”中的副本(将变量替换为正确的值):

hadoop distcp -Dfs.s3a.secret.key='<SECRET_KEY>' 
-Dfs.s3a.access.key='<ACCESS_KEY>' \
-Dfs.s3a.path.style.access=true 
-Dfs.s3a.paging.maximum=1000 \
-Dfs.s3a.endpoint='https://<TENANCY>.compat.objectstorage.us-ashburn-1.oraclecloud.com' \
/hdfs_target s3a://<BUCKET_NAME>/ 

反之,可以切换 HDFS 目标和 S3 目标将数据从对象存储复制到 HDFS 中。此方法适用于 Cloudera、Hortonworks 和 Apache Hadoop。

第二种选择是在Oracle Cloud Infrastructure中建立 Hadoop 集群,确保源集群和Oracle Cloud Infrastructure 集群具有连接性,并在集群之间运行 DistCp。此方法还适用于 Apache Hadoop、Cloudera 和 Hortonworks。

对于 MapR 集群,通过在集群之间设置卷远程镜像来迁移数据。

数据传输设备

通过线路移动数据不适用时,Oracle 数据传输设备是用于数据传输的另一个选项。

源集群上可能存在带宽或资源约束条件,或者与Oracle Cloud Infrastructure 区域接近可能会限制 FastConnect 可用性。数据集也可能太大,无法复制。在这些情况下,Oracle 可以向您发送一个数据传输设备,您可以在数据中心部署该设备并将其用作 HDFS 数据的 DistCp 目标。

集群元数据迁移

将集群元数据迁移到Oracle Cloud Infrastructure 的方法会随 Cloudera、Hortonworks、MapR 和 Apache 的不同而有所不同。

Cloudera

对于 Cloudera 集群,集群元数据支持三种类型的数据库:Postgres、MySQL 和 Oracle。

Cloudera 企业文档中包含备份 Cloudera 管理器数据库的步骤。然后,您可以将此数据导入到在Oracle Cloud Infrastructure上运行 Cloudera 的集群。

临时工

对于 Hortonworks,Cloudera 支持相同的数据库。对于不透明的情况,您可以从现有集群导出蓝图,然后使用它来配置Oracle Cloud Infrastructure 主机-工作部署。

MapR

请按照 MapR 用于备份 MapR 文档的最佳实践中的步骤进行操作。然后,可以将此数据导入 Oracle Cloud Infrastructure MapR 集群。

Apache

对于 Apache Hadoop,Cloudera 和 Hortonworks 支持同一数据库,使用与 Ambari、Hive 和 HBase 相同的过程。