Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Migrieren von vorherigen HBase-Versionen
Informationen zum Migrieren von Daten aus einer vorherigen HBase-Version finden Sie unter Upgrading
Migration auf Amazon EMR Version 7.4.0 oder höher
Anmerkung
Folgen Sie diesen Richtlinien, wenn Sie von einer EMR-Version vor 7.4.0 auf eine Version über 7.3.0 migrieren.
Wenn Sie derzeit eine EMR-Version mit aktivierter Amazon Store File Tracking-Funktion ausführen, die in den Versionen 6.2.0 bis 7.3.0 enthalten ist, und Sie auf eine Version mit OSS Store File Tracking aktualisieren möchten, die in EMR-Versionen nach 7.3.0 verfügbar ist, gehen Sie wie folgt vor:
Im vorhandenen Cluster:
Deaktivieren Sie die
hbase:storefileTabelle.Lass den
hbase:storefileTisch fallen.Spülen
hbase:meta.Warten Sie, bis die Metadaten aktualisiert sind.
Im neuen Cluster:
Legen Sie dasselbe Amazon S3-Verzeichnis als Stammverzeichnis fest.
Starten Sie den Cluster mit der
DefaultStoreFileTrackerImplementierung:{ "Classification": "hbase-site", "Properties": { hbase.store.file-tracker.impl: "org.apache.hadoop.hbase.regionserver.storefiletracker.DefaultStoreFileTracker" } }Verwenden Sie auf der Ebene der Tabellen- oder Spaltenfamilie die folgenden Befehle, um den Store File Tracker zu ändern:
Ändern Sie den Store File Tracker der Tabelle oder Tabellenspaltenfamilie:
hbase> change_sft 't1','FILE' hbase> change_sft 't2','cf1','FILE'Ändere den gesamten Store File Tracker der Tabelle, der dem angegebenen regulären Ausdruck (Regex) entspricht:
hbase> change_sft_all 't.*','FILE' hbase> change_sft_all 'ns:.*','FILE' hbase> change_sft_all 'ns:t.*','FILE'
Migration von HBase auf Amazon S3-Clustern auf Amazon EMR Version 7.12.0 oder höher mithilfe von Clustern Read-Replica
Ab EMR 7.12.0 können Sie eine Read-Replica-HBase auf einem Amazon S3-Cluster vom schreibgeschützten Modus in den aktiven Modus umschalten, sodass sowohl Lese- als auch Schreibvorgänge möglich sind. Diese Funktionalität wird durch zwei neue HBase-Shell-Befehle bereitgestellt.
Anmerkung
Wenn Sie Amazon EMR Version 7.12.0 oder höher verwenden, verwenden Sie die folgende Beispielkonfiguration:
{ "Classification": "hbase-site", "Properties": { "hbase.rootdir": "s3://{S3_LOCATION}" } }, { "Classification": "hbase", "Properties": { "hbase.emr.storageMode": "s3", "hbase.emr.readreplica.enabled.v2": "true" } }
readonly_stateRuft den aktuellen Lese- und Schreibbetriebsstatus des Clusters ab.
Ausgabe:
INAKTIV — Der Cluster befindet sich im schreibgeschützten Modus und der Schreibvorgang ist inaktiv.
AKTIV — Der Cluster unterstützt sowohl Lese- als auch Schreibvorgänge.
readonly_switchAktiviert oder deaktiviert den Nur-Lese-Modus mit konfigurierbaren Optionen für den Switching-Vorgang.
Syntax:
readonly_switch <readonly>,<force_flush>,<force_refresh_meta>,<force_refresh_hfile>Parameter:
readonly (erforderlich) — Boolescher Wert zum Aktivieren (true) oder deaktivieren (false) des schreibgeschützten Modus
force_flush (optional) — Erzwingt eine Datenleerung, bevor vom aktiven in den schreibgeschützten Modus gewechselt wird (Standardeinstellung: true)
force_refresh_meta (optional) — Erzwingt die Aktualisierung der Metatabelle, wenn vom schreibgeschützten in den aktiven Modus gewechselt wird (Standardeinstellung: true)
force_refresh_hfile (optional) — Erzwingt eine Aktualisierung der hFile, wenn vom schreibgeschützten in den aktiven Modus gewechselt wird (Standardeinstellung: true)
Migrationsschritte
Wenn Sie derzeit ein EMR 6.0.0+ HBase auf einem Amazon S3-Cluster ausführen und auf einen EMR-Cluster 7.12.0 oder höher migrieren möchten, gehen Sie wie folgt vor:
Stellen Sie sicher, dass sich Ihr Quell-Cluster in einem stabilen Zustand ohne Inkonsistenzen befindet, indem Sie den HBCK-Bericht oder festgefahrene Prozeduren auf der HBase-Master-Benutzeroberfläche verwenden.
sudo -u hbase hbase hbck > hbck_report.txtStellen Sie sicher, dass sich auf dem Quellcluster keine Regionen im SPLIT-Status befinden:
Wenn es Regionen im SPLIT-Status gibt, führen Sie umfangreiche Komprimierungen für die jeweiligen Tabellen durch und warten Sie, bis sie abgeschlossen sind
major_compact <table_name>Führen Sie den
catalogjanitor_runVorgang in der HBase-Shell aus, nachdem die Komprimierung abgeschlossen ist
Erstellen Sie einen neuen EMR 7.12.0+-Cluster, der als Read-Replica konfiguriert ist und auf denselben Amazon S3-Standort wie Ihr Quell-Cluster verweist. In diesem Blog finden Sie weitere Informationen
zur Einrichtung eines Read Replica-Clusters. Starten Sie den neuen Cluster mit der DefaultStoreFileTracker Konfiguration, wie in den obigen Schritten beschrieben, wenn Sie auf das OSS Store-Datei-Tracking aktualisieren möchten. Warten Sie, bis der Master-Knoten vollständig initialisiert ist. Überprüfen Sie den Datenzugriff, indem Sie die Tabellen lesen und sicherstellen, dass sich der neue Cluster im schreibgeschützten Modus befindet
hbase:001:0> readonly_state Took 0.4612 seconds => "INACTIVE"Deaktivieren Sie den Ausgleich und die Komprimierung auf dem Quell-Cluster:
echo "balance_switch false" | hbase shell echo "compaction_switch false" | hbase shellStellen Sie sicher, dass auf der Benutzeroberfläche des Read-Replica-Clusters nichts overlaps/inconsistencies angezeigt wird, und stellen Sie sicher, dass Regionen den Status OPEN aufweisen und ordnungsgemäß zugewiesen sind.
Konvertieren Sie das Store-Datei-Tracking mithilfe der Befehle auf dem Read-Replica-Cluster, die im obigen Abschnitt erwähnt wurden, wenn Sie zu wechseln möchten. FileBasedTracker
Beenden Sie die Jobs, die auf den Quell-Cluster verweisen, leeren Sie alle Tabellen und fahren Sie den Quell-Cluster herunter. Warten Sie, bis der Vorgang abgeschlossen ist, bevor Sie fortfahren.
echo "flush 'usertable'" | hbase shell echo "flush 'hbase:meta'" | hbase shell echo "flush 'hbase:namespace'" | hbase shellSchalten Sie den Read-Replica-Cluster in den aktiven Modus, um Schreibvorgänge zu ermöglichen. Nach Abschluss dieses Schritts unterstützt Ihr neuer Cluster sowohl Lese- als auch Schreibvorgänge, und die Migration ist abgeschlossen.
hbase:010:0> readonly_switch false Took 38.1568 secondsValidieren Sie Schreibvorgänge auf dem neuen Cluster und stellen Sie sicher, dass alle Regionen Anfragen verarbeiten.
Anmerkung
Es kann zu jedem Zeitpunkt nur ein aktiver Cluster geben, der auf einen Amazon S3-Standort verweist. Daher sollte das Umschalten der Read-Replica auf Aktiv erst erfolgen, nachdem der Quell-Cluster beendet wurde.