View a markdown version of this page

Migrasi dari versi sebelumnya HBase - Amazon EMR

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Migrasi dari versi sebelumnya HBase

Untuk memigrasikan data dari HBase versi sebelumnya, lihat Upgrade dan nomor HBase versi serta kompatibilitas di Panduan Referensi Apache HBase . Anda mungkin perlu memberi perhatian khusus pada persyaratan untuk meningkatkan dari versi pra-1.0. HBase

Migrasi ke Amazon EMR versi 7.4.0 atau yang lebih baru

catatan

Ikuti panduan ini jika Anda bermigrasi dari rilis EMR lebih awal dari 7.4.0 ke rilis yang lebih besar dari 7.3.0.

Jika saat ini Anda menjalankan versi EMR dengan fitur Pelacakan File Store Amazon diaktifkan, yang disertakan dalam versi 6.2.0 ke 7.3.0, dan Anda ingin meningkatkan ke versi dengan OSS Store File Tracking, yang tersedia pada versi EMR lebih lambat dari 7.3.0, ikuti langkah-langkah berikut:

  1. Di cluster yang ada:

    1. Nonaktifkan hbase:storefile tabel.

    2. Jatuhkan hbase:storefile meja.

    3. Siramhbase:meta.

    4. Tunggu metadata diperbarui.

  2. Di cluster baru:

    1. Tetapkan direktori Amazon S3 yang sama dengan direktori root.

    2. Mulai cluster dengan DefaultStoreFileTracker implementasi:

      { "Classification": "hbase-site", "Properties": { hbase.store.file-tracker.impl: "org.apache.hadoop.hbase.regionserver.storefiletracker.DefaultStoreFileTracker" } }
    3. Pada tingkat keluarga tabel atau kolom, gunakan perintah berikut untuk mengubah pelacak file toko:

      1. Ubah Store File Tracker keluarga kolom tabel atau tabel:

        hbase> change_sft 't1','FILE' hbase> change_sft 't2','cf1','FILE'
      2. Ubah semua Store File Tracker tabel yang cocok dengan ekspresi reguler yang diberikan (regex):

        hbase> change_sft_all 't.*','FILE' hbase> change_sft_all 'ns:.*','FILE' hbase> change_sft_all 'ns:t.*','FILE'

Migrasi HBase di cluster Amazon S3 ke Amazon EMR Versi 7.12.0 atau yang lebih baru menggunakan cluster Read-Replica

Dimulai dengan EMR 7.12.0, Anda dapat mengganti replika baca HBase di klaster Amazon S3 dari mode hanya-baca ke mode aktif, memungkinkan operasi baca dan tulis. Fungsionalitas ini disediakan melalui dua perintah HBase shell baru.

  1. readonly_state

    Mengambil status operasional read-write saat ini dari cluster.

    Output:

    • TIDAK AKTIF - Cluster dalam mode hanya-baca dan tulis tidak aktif.

    • ACTIVE - Cluster mendukung operasi baca dan tulis.

  2. readonly_switch

    Mengaktifkan atau menonaktifkan mode hanya-baca dengan opsi yang dapat dikonfigurasi untuk proses peralihan.

    Sintaksis:

    readonly_switch <readonly>,<force_flush>,<force_refresh_meta>,<force_refresh_hfile>

    Parameter:

    • readonly (required) - Nilai Boolean untuk mengaktifkan (true) atau menonaktifkan mode read-only (false)

    • force_flush (opsional) - Memaksa pembilasan data sebelum beralih dari mode aktif ke mode hanya-baca (default: true)

    • force_refresh_meta (opsional) - Memaksa penyegaran tabel meta saat beralih dari mode read-only ke mode aktif (default: true)

    • force_refresh_hfile (opsional) - Memaksa HFile penyegaran saat beralih dari mode read-only ke mode aktif (default: true)

Langkah migrasi

Jika saat ini Anda menjalankan EMR 6.0.0+ di klaster Amazon HBase S3 dan ingin bermigrasi ke kluster EMR 7.12.0 atau yang lebih baru, ikuti langkah-langkah berikut:

  1. Pastikan cluster sumber Anda dalam keadaan stabil tanpa inkonsistensi menggunakan laporan hbck atau prosedur macet dari UI master. HBase

    sudo -u hbase hbase hbck > hbck_report.txt
  2. Pastikan tidak ada wilayah dalam status SPLIT di cluster sumber:

    1. Jika ada wilayah dalam status SPLIT, jalankan pemadatan utama pada tabel masing-masing dan tunggu sampai selesai

      major_compact <table_name>
    2. Jalankan catalogjanitor_run di HBase shell setelah pemadatan selesai

  3. Buat kluster EMR 7.12.0+ baru yang dikonfigurasi sebagai replika baca yang menunjuk ke lokasi Amazon S3 yang sama dengan cluster sumber Anda. Lihat blog ini untuk detail lebih lanjut tentang cara mengatur cluster replika baca. Luncurkan cluster baru dengan DefaultStoreFileTracker konfigurasi seperti yang disebutkan dalam langkah-langkah di atas jika Anda ingin meningkatkan ke pelacakan file OSS Store.

  4. Tunggu node master untuk menginisialisasi sepenuhnya. Verifikasi aksesibilitas data dengan membaca tabel dan mengonfirmasi klaster baru dalam mode hanya-baca

    hbase:001:0> readonly_state Took 0.4612 seconds => "INACTIVE"
  5. Nonaktifkan penyeimbangan dan pemadatan pada cluster sumber:

    echo "balance_switch false" | hbase shell echo "compaction_switch false" | hbase shell
  6. Pastikan tidak ada yang overlaps/inconsistencies muncul di UI cluster read-replica dan verifikasi bahwa wilayah menunjukkan status OPEN dan ditetapkan dengan benar.

  7. Konversikan pelacakan file Store menggunakan perintah pada cluster read-replica yang disebutkan di bagian di atas jika Anda ingin mengubahnya. FileBasedTracker

  8. Hentikan pekerjaan yang menunjuk ke cluster sumber, siram semua tabel, dan matikan cluster sumber. Tunggu penghentian total sebelum melanjutkan.

    echo "flush 'usertable'" | hbase shell echo "flush 'hbase:meta'" | hbase shell echo "flush 'hbase:namespace'" | hbase shell
  9. Ganti cluster baca-replika ke mode aktif untuk mengaktifkan operasi tulis. Setelah menyelesaikan langkah ini, cluster baru Anda akan mendukung operasi baca dan tulis, dan migrasi selesai.

    hbase:010:0> readonly_switch false Took 38.1568 seconds
  10. Validasi penulisan di klaster baru dan pastikan semua wilayah melayani permintaan.

catatan

Hanya ada satu cluster aktif yang menunjuk ke lokasi Amazon S3 kapan saja. Oleh karena itu, mengalihkan replika baca ke aktif harus dilakukan hanya setelah cluster sumber dihentikan.