すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:データの移行

最終更新日:Jan 11, 2025

E-MapReduce(EMR)を使用すると、オンプレミス マシン上のセルフマネージド Kudu クラスタから EMR クラスタにデータを移行できます。このトピックでは、オンプレミス マシン上のセルフマネージド Kudu クラスタから、Kudu サービスがデプロイされている EMR Hadoop クラスタにデータを移行する方法について説明します。

前提条件

  • セルフマネージド Kudu クラスタが作成されていること。

  • Kudu サービスを含む EMR Hadoop クラスタが作成されていること。詳細については、「クラスタの作成」をご参照ください。

背景情報

EMR Kudu は、Apache Kudu 1.10 および 1.11 と互換性があります。Apache Kudu が提供するバックアップおよびリストア ツールを使用してデータを移行できます。次の図は、データ移行プロセスを示しています。kudu

手順

  1. 次のコマンドを実行して、移行する Kudu テーブルの名前を表示します。

    Kudu table list {YourKuduMasterAddress}
    説明

    {YourKuduMasterAddress} は、セルフマネージド Kudu クラスタのマスターノードの内部 IP アドレスを指定します。複数の内部 IP アドレスを指定できます。カンマ(,)で区切ります。

  2. Apache Kudu が提供するバックアップ ツールを使用して、セルフマネージド Kudu クラスタ内のテーブルをバックアップします。

    バックアップ ツールは、既存のバックアップ情報に基づいて、増分バックアップまたはフルバックアップを実行します。

    説明

    セルフマネージド Kudu クラスタ内の指定されたテーブルを初めてバックアップする場合、テーブルのすべてのデータがバックアップされます。後続のバックアップ シナリオでは、セルフマネージド Kudu クラスタ内のテーブルの増分データのみがバックアップされます。これにより、ストレージ容量が節約され、バックアップ時間が短縮されます。

    次のコマンドでは、--kuduMasterAddresses は、セルフマネージド Kudu クラスタのマスターノードの内部 IP アドレスを指定します。

    • オブジェクト ストレージ サービス(OSS)を中間ストレージとして使用する

      spark-submit --class org.apache.kudu.backup.KuduBackup kudu-backup2_2.11-1.10.0.jar \
        --kuduMasterAddresses master1-host,master-2-host,master-3-host \
        --rootPath oss://{your_BucketName}/kudu-backups {YourTableList}
      説明

      {your_BucketName} は、OSS バケットの名前を指定します。{YourTableList} は、バックアップするテーブルを指定します。

    • Hadoop 分散ファイル システム(HDFS)を中間ストレージとして使用する

      spark-submit --class org.apache.kudu.backup.KuduBackup kudu-backup2_2.11-1.10.0.jar \
        --kuduMasterAddresses master1-host,master-2-host,master-3-host \
        --rootPath hdfs://{YourHDFSCluster}/kudu-backups {YourTableList}
      説明

      {YourHDFSCluster} は、Hadoop クラスタのアドレスを指定します。

  3. Kudu バックアップ ディレクトリ内のデータを確認します。

  4. EMR Kudu クラスタでリストア コマンドを実行して、データを EMR Kudu クラスタにインポートします。

    サンプル コード:

    • OSS を中間ストレージとして使用する

      spark-submit --class org.apache.kudu.backup.KuduRestore kudu-backup2_2.11-1.10.0.jar \
        --kuduMasterAddresses master1-host,master-2-host,master-3-host \
        --rootPath oss://{your_BucketName}/kudu-backups {YourTableList}
      説明

      上記のコマンドでは、--kuduMasterAddresses は、セルフマネージド Kudu クラスタのマスターノードの内部 IP アドレスを指定します。

    • HDFS を中間ストレージとして使用する

      spark-submit --class org.apache.kudu.backup.KuduRestore kudu-backup2_2.11-1.10.0.jar \
        --kuduMasterAddresses master1-host,master-2-host,master-3-host \
        --rootPath hdfs://{YourHDFSCluster}/kudu-backups {YourTableList}
  5. EMR Kudu クラスタ内のテーブルのデータとテーブル名が、コンピューティング エンジンを使用してクエリされたテーブルのデータとテーブル名と一致するかどうかを確認します。