全部产品
Search
文档中心

Object Storage Service:Migrasi data dari HDFS ke OSS-HDFS

更新时间:Jul 02, 2025

Untuk mencadangkan data atau menambah ruang penyimpanan di Hadoop Distributed File System (HDFS), Anda dapat memigrasikan data dari HDFS ke OSS-HDFS menggunakan alat Jindo DistCp yang secara otomatis diterapkan dalam kluster Alibaba Cloud E-MapReduce (EMR). OSS-HDFS kompatibel dengan ekosistem Hadoop. Setelah migrasi, Anda dapat menggunakan berbagai alat dan kerangka kerja dari ekosistem Hadoop untuk memproses dan menganalisis data.

Prasyarat

  • Kluster Alibaba Cloud EMR-5.6.0 atau versi lebih baru, atau kluster EMR-3.40.0 atau versi lebih baru telah dibuat. Untuk informasi lebih lanjut, lihat Buat Kluster.

  • Lingkungan Hadoop 2.7.0 atau lebih baru, atau Hadoop 3.x telah disiapkan di kluster Elastic Compute Service (ECS) yang Anda kelola sendiri. Kluster tersebut harus dapat menjalankan pekerjaan MapReduce. Anda perlu menerapkan JindoData sendiri sebelum menyelesaikan migrasi di kluster ECS. JindoData mencakup JindoSDK dan JindoFSx. Kami merekomendasikan Anda mengunduh versi terbaru.

  • OSS-HDFS telah diaktifkan untuk sebuah bucket dan izin telah diberikan untuk mengakses OSS-HDFS. Untuk informasi lebih lanjut, lihat Aktifkan OSS-HDFS.

Informasi latar belakang

Anda dapat menggunakan Jindo DistCp untuk menyalin file dalam atau antar kluster berskala besar. Jindo DistCp menggunakan MapReduce untuk mendistribusikan file, menangani kesalahan, dan memulihkan data. Daftar file dan direktori digunakan sebagai input tugas MapReduce. Setiap tugas menyalin file dan direktori tertentu dalam daftar input. Jindo DistCp mendukung penyalinan data penuh antar direktori dalam HDFS, antara HDFS dan Object Storage Service (OSS), antara HDFS dan OSS-HDFS, serta antar bucket dalam OSS-HDFS. Jindo DistCp juga menyediakan berbagai parameter salinan kustom dan kebijakan penyalinan.

Jindo DistCp memberikan manfaat berikut:

  • Efisiensi tinggi. Kecepatan migrasi data Jindo DistCp 1,59 kali lebih cepat daripada Hadoop DistCp.

  • Fitur dasar yang kaya. Jindo DistCp menyediakan beberapa metode penyalinan dan berbagai kebijakan optimasi berbasis skenario.

  • Integrasi mendalam dengan OSS. Jindo DistCp memanfaatkan fitur-fitur OSS sehingga Anda dapat melakukan berbagai operasi pada data, termasuk menekan data dan mengonversi kelas penyimpanan data menjadi Arsip.

  • Penyalinan file tanpa mengubah nama file. Ini memastikan konsistensi data.

  • Kompatibilitas tinggi. Jindo DistCp berlaku untuk berbagai skenario dan dapat digunakan untuk menggantikan Hadoop DistCp. Jindo DistCp mendukung Hadoop 2.7.x dan Hadoop 3.x.

Prosedur

  1. Masuk ke kluster EMR.

    1. Masuk ke konsol EMR. Di panel navigasi di sebelah kiri, klik EMR on ECS.

    2. Klik kluster EMR yang telah Anda buat.

    3. Klik tab Nodes, lalu klik ikon +.jpg di sisi kiri grup node.

    4. Klik ID Instance ECS. Pada halaman Instances, klik Connect di sebelah ID instance.

      Untuk informasi lebih lanjut tentang cara masuk ke kluster di Windows atau Linux menggunakan pasangan kunci SSH atau kata sandi SSH, lihat Masuk ke Kluster.

  2. Migrasikan data dari jalur tertentu di HDFS ke OSS-HDFS.

    1. Jalankan perintah berikut untuk melihat data di HDFS:

      hdfs dfs -ls /

      Contoh respons:

      Ditemukan 8 item
      drwxrwxrwx - admin supergroup 0 2023-10-26 10:55 /.sysinfo
      drwxrwxrwx - hadoop supergroup 0 2023-10-26 10:55 /apps
      drwxrwxrwx - root supergroup 0 2022-08-03 15:54 /data
      -rw-r----- 1 root supergroup 13 2022-08-25 11:45 /examplefile.txt
      drwxrwxrwx - spark supergroup 0 2023-10-26 14:49 /spark-history
      drwx-wx-wx - hive supergroup 0 2023-10-26 13:35 /tmp
      drwxrwxrwx - hive supergroup 0 2023-10-26 14:48 /user
      drwxrwxrwx - hadoop supergroup 0 2023-10-26 14:48 /yarn
    2. Beralihlah ke direktori tempat paket jindo-distcp-tool-${version}.jar berada.

      cd /opt/apps/JINDOSDK/jindosdk-current/tools
    3. Lihat versi jindo-distcp-tool yang secara otomatis diterapkan dalam kluster EMR.

      ls
    4. Migrasikan data dari HDFS ke OSS-HDFS.

      Migrasi atau menyalin data penuh

      Migrasikan atau salin data di direktori yang ditentukan, seperti /tmp, dari HDFS ke jalur tujuan OSS-HDFS, seperti oss://examplebucket/dir. Dalam contoh topik ini, jindo-distcp-tool-6.1.0.jar digunakan. Anda harus mengganti nomor versi dengan nomor versi aktual.

      hadoop jar jindo-distcp-tool-6.1.0.jar --src /tmp/ --dest oss://examplebucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/ --hadoopConf fs.oss.accessKeyId=LTAI************************  --hadoopConf fs.oss.accessKeySecret=yourAccessKeySecret --parallelism 10

      Tabel berikut menjelaskan parameter dan opsi dalam perintah.

      Parameter/Opsi

      Deskripsi

      Contoh

      --src

      Jalur sumber data di HDFS yang ingin Anda migrasikan atau salin.

      /tmp/

      --dest

      Jalur tujuan di OSS-HDFS tempat data yang dimigrasikan atau disalin disimpan.

      oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/

      --hadoopConf

      Pasangan AccessKey yang digunakan untuk mengakses OSS-HDFS. Pasangan AccessKey terdiri dari ID AccessKey dan Rahasia AccessKey.

      • ID AccessKey

        LTAI************************ 
      • Rahasia AccessKey

        yourAccessKeySecret

      --parallelism

      Jumlah thread migrasi data atau thread penyalinan data yang dapat berjalan secara bersamaan berdasarkan jumlah sumber daya di kluster Anda.

      10

      Migrasi atau menyalin data tambahan

      Jika Anda hanya ingin memigrasikan atau menyalin data tambahan dari jalur sumber setelah migrasi atau penyalinan data penuh, Anda dapat menggunakan opsi --update.

      Contoh kode berikut menunjukkan cara memigrasikan atau menyalin data tambahan dari data/ di HDFS ke oss://destbucket/dir di OSS-HDFS.

      hadoop jar jindo-distcp-tool-6.1.0.jar --src /data/ --dest oss://destbucket.cn-hangzhou.oss-dls.aliyuncs.com/dir/ --hadoopConf fs.oss.accessKeyId=LTAI************************  --hadoopConf fs.oss.accessKeySecret=yourAccessKeySecret --update --parallelism 10

Referensi

  • Jika Anda tidak ingin menambahkan titik akhir dan pasangan AccessKey secara manual setiap kali menjalankan perintah migrasi, Anda dapat mengonfigurasi titik akhir dan pasangan AccessKey terlebih dahulu di file konfigurasi Hadoop core-site.xml. Untuk informasi lebih lanjut, lihat Hubungkan Kluster Non-EMR ke OSS-HDFS.

  • Untuk informasi lebih lanjut tentang skenario penggunaan lainnya dari Jindo DistCp, lihat Gunakan Jindo DistCp.