View a markdown version of this page

Migrazione da versioni precedenti HBase - Amazon EMR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Migrazione da versioni precedenti HBase

Per migrare i dati da una HBase versione precedente, consulta Aggiornamento, numero di HBase versione e compatibilità nella Guida di riferimento di Apache. HBase Potrebbe essere necessario prestare particolare attenzione ai requisiti per l'aggiornamento da versioni precedenti alla 1.0 di. HBase

Migrazione ad Amazon EMR versione 7.4.0 o successiva

Nota

Segui queste linee guida se stai migrando da una versione EMR precedente alla 7.4.0 a una versione successiva alla 7.3.0.

Se attualmente utilizzi una versione EMR con la funzionalità Store File Tracking di Amazon abilitata, inclusa nelle versioni da 6.2.0 a 7.3.0, e desideri eseguire l'aggiornamento a una versione con OSS Store File Tracking, disponibile nelle versioni EMR successive alla 7.3.0, procedi nel seguente modo:

  1. Nel cluster esistente:

    1. Disattiva la hbase:storefile tabella.

    2. Abbassa il hbase:storefile tavolo.

    3. Sciacquare. hbase:meta

    4. Attendi l'aggiornamento dei metadati.

  2. Nel nuovo cluster:

    1. Imposta la stessa directory Amazon S3 come directory principale.

    2. Avvia il cluster con l'DefaultStoreFileTrackerimplementazione:

      { "Classification": "hbase-site", "Properties": { hbase.store.file-tracker.impl: "org.apache.hadoop.hbase.regionserver.storefiletracker.DefaultStoreFileTracker" } }
    3. A livello di tabella o famiglia di colonne, usa i seguenti comandi per modificare il tracker dei file di archiviazione:

      1. Cambia lo Store File Tracker della tabella o della famiglia di colonne di tabelle:

        hbase> change_sft 't1','FILE' hbase> change_sft 't2','cf1','FILE'
      2. Cambia tutto lo Store File Tracker della tabella che corrisponde all'espressione regolare specificata (regex):

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

Migrazione HBase da cluster Amazon S3 ad Amazon EMR versione 7.12.0 o successiva utilizzando cluster Read-Replica

A partire da EMR 7.12.0, puoi passare una replica di lettura HBase su un cluster Amazon S3 dalla modalità di sola lettura alla modalità attiva, abilitando sia le operazioni di lettura che quelle di scrittura. Questa funzionalità è fornita tramite due nuovi comandi di shell. HBase

  1. readonly_state

    Recupera lo stato operativo corrente di lettura/scrittura del cluster.

    Output:

    • INATTIVO: il cluster è in modalità di sola lettura e la scrittura non è attiva.

    • ATTIVO - Il cluster supporta sia le operazioni di lettura che quelle di scrittura.

  2. readonly_switch

    Abilita o disabilita la modalità di sola lettura con opzioni configurabili per il processo di commutazione.

    Sintassi:

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

    Parametri:

    • readonly (obbligatorio) - Valore booleano per abilitare (true) o disabilitare (false) la modalità di sola lettura

    • force_flush (opzionale) - Forza lo svuotamento dei dati prima di passare dalla modalità attiva a quella di sola lettura (impostazione predefinita: true)

    • force_refresh_meta (opzionale) - Forza l'aggiornamento della metatabella quando si passa dalla modalità di sola lettura a quella attiva (impostazione predefinita: true)

    • force_refresh_hfile (opzionale) - Forza l'aggiornamento quando si passa dalla modalità di sola lettura a quella attiva (impostazione predefinita: true) HFile

Fasi della migrazione

Se attualmente utilizzi un cluster EMR 6.0.0+ su un cluster Amazon HBase S3 e desideri migrare a un cluster EMR 7.12.0 o successivo, segui questi passaggi:

  1. Assicurati che il cluster di origine sia in uno stato stabile senza incongruenze utilizzando il report hbck o le procedure bloccate dell'interfaccia utente principale. HBase

    sudo -u hbase hbase hbck > hbck_report.txt
  2. Assicurati che non vi siano regioni nello stato SPLIT sul cluster di origine:

    1. Se ci sono regioni nello stato SPLIT, esegui le compattazioni principali sulle rispettive tabelle e attendi che vengano completate

      major_compact <table_name>
    2. Esegui catalogjanitor_run nel HBase guscio una volta completata la compattazione

  3. Crea un nuovo cluster EMR 7.12.0+ configurato come replica di lettura che punta alla stessa posizione Amazon S3 del cluster di origine. Consulta questo blog per maggiori dettagli su come configurare un cluster di replica di lettura. Avvia il nuovo cluster con la DefaultStoreFileTracker configurazione indicata nei passaggi precedenti se desideri eseguire l'aggiornamento al file tracking dell'OSS Store.

  4. Attendi che il nodo master si inizializzi completamente. Verifica l'accessibilità dei dati leggendo le tabelle e conferma che il nuovo cluster sia in modalità di sola lettura

    hbase:001:0> readonly_state Took 0.4612 seconds => "INACTIVE"
  5. Disabilita il bilanciamento e la compattazione sul cluster di origine:

    echo "balance_switch false" | hbase shell echo "compaction_switch false" | hbase shell
  6. Assicurati che non overlaps/inconsistencies siano presenti nell'interfaccia utente del cluster di lettura e replica e verifica che le aree mostrino lo stato OPEN e siano assegnate correttamente.

  7. Se desideri passare a, converti il tracciamento dei file Store utilizzando i comandi sul cluster di lettura e replica menzionati nella sezione precedente. FileBasedTracker

  8. Interrompi i job che puntano al cluster di origine, svuota tutte le tabelle e chiudi il cluster di origine. Attendi la chiusura completa prima di procedere.

    echo "flush 'usertable'" | hbase shell echo "flush 'hbase:meta'" | hbase shell echo "flush 'hbase:namespace'" | hbase shell
  9. Passa il cluster di lettura e replica alla modalità attiva per abilitare le operazioni di scrittura. Dopo aver completato questo passaggio, il nuovo cluster supporterà sia le operazioni di lettura che di scrittura e la migrazione sarà completa.

    hbase:010:0> readonly_switch false Took 38.1568 seconds
  10. Convalida le scritture sul nuovo cluster e assicurati che tutte le regioni soddisfino le richieste.

Nota

Può esserci un solo cluster attivo che punta a una posizione Amazon S3 in qualsiasi momento. Pertanto, la commutazione della replica di lettura in attiva deve essere eseguita solo dopo la chiusura del cluster di origine.