

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
<a name="emr-hbase-migrate"></a>

Per migrare i dati da una HBase versione precedente, consulta [Aggiornamento, numero di HBase ](https://hbase.apache.org/book.html#upgrading) [versione e compatibilità](https://hbase.apache.org/book.html#hbase.versioning) 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
<a name="emr-hbase-migrate-versions"></a>

**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.

   1. Abbassa il `hbase:storefile` tavolo.

   1. Sciacquare. `hbase:meta`

   1. Attendi l'aggiornamento dei metadati.

1. Nel nuovo cluster:

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

   1. Avvia il cluster con l'`DefaultStoreFileTracker`implementazione:

      ```
      {
        "Classification": "hbase-site",
        "Properties": {
          hbase.store.file-tracker.impl: "org.apache.hadoop.hbase.regionserver.storefiletracker.DefaultStoreFileTracker"
         }
      }
      ```

   1. 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'
         ```

      1. 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 name="emr-hbase-migrate-s3-read-replica"></a>

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.

1. `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
<a name="emr-hbase-migrate-s3-steps"></a>

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
   ```

1. 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>
      ```

   1. Esegui `catalogjanitor_run` nel HBase guscio una volta completata la compattazione

1. 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](https://aws.amazon.com/blogs/big-data/setting-up-read-replica-clusters-with-hbase-on-amazon-s3/) 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.

1. 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"
   ```

1. Disabilita il bilanciamento e la compattazione sul cluster di origine:

   ```
   echo "balance_switch false" | hbase shell
   echo "compaction_switch false" | hbase shell
   ```

1. 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.

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

1. 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
   ```

1. 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
   ```

1. 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.