In diesem Dokument wird beschrieben, wie Sie Ihre Daten und Ihre Anwendung zu Spanner Graph migrieren. Wir beschreiben die Phasen der Migration und die empfohlenen Tools. für jede Phase, abhängig von Ihrer Quelldatenbank und anderen Faktoren.
Die Migration Ihres Graphen zu Spanner Graph umfasst die folgenden Hauptphasen:
- Halten Sie die Anforderungen für Ihre Bewerbung fest.
- Erstellen Sie Ihr Spanner-Graph-Schema.
- Anwendung zu Spanner Graph migrieren
- Spanner-Diagramm testen und abstimmen.
- Migrieren Sie Ihre Daten zu Spanner Graph.
- Validieren Sie die Datenmigration.
- Umstellungs- und Failover-Mechanismus konfigurieren
Zur Leistungsoptimierung Ihres Schemas und Ihrer Anwendung müssen Sie möglicherweise Schema iterativ entwerfen, Anwendung erstellen, testen und optimieren Spanner-Diagramm.
Anforderungen an die Anwendung ermitteln
Um ein Schema zu entwerfen, das Ihren Anwendungsanforderungen entspricht, erfassen Sie folgenden Anforderungen:
- Datenmodellierung
- Häufige Abfragemuster
- Anforderungen an Latenz und Durchsatz
Spanner-Graph-Schema entwerfen
Informationen zum Entwerfen eines Spanner-Graph-Schemas finden Sie unter Spanner-Graph-Schema – Übersicht. Weitere Beispiele finden Sie unter Spanner-Graph-Schema erstellen, aktualisieren oder löschen. Informationen zum Optimieren Ihres Schemas für gängige Abfragemuster finden Sie unter Best Practices für das Entwerfen eines Spanner-Graph-Schemas.
Anwendung zu Spanner Graph migrieren
Lesen Sie zuerst die allgemeinen Spanner-Anleitungen zur Migration Ihrer Anwendung und dann die Anleitungen in diesem Abschnitt, um mehr über die Migration von Spanner-Graphanwendungen zu erfahren.
Mit Spanner Graph verbinden
Informationen zum programmatischen Herstellen einer Verbindung zu Spanner Graph finden Sie unter Spanner Graph-Schema erstellen, aktualisieren oder löschen und Spanner Graph-Abfragen – Übersicht.
Abfragen migrieren
Die Spanner Graph-Abfrageschnittstelle ist mit ISO GQL kompatibel und unterstützt zusätzlich die OpenCypher-Syntax. Weitere Informationen finden Sie unter Spanner-Graphreferenz für openCypher-Nutzer.
Mutationen migrieren
Sie können die Spanner-Tabelle verwenden, um die Mutationslogik Ihrer Anwendung zu migrieren Mutationsmechanismen ein. Weitere Informationen finden Sie unter Spanner-Diagramm einfügen, aktualisieren oder löschen Daten.
Spanner-Diagramm testen und optimieren
Spanner-Anleitung zum Testen und Optimieren der Schema- und Anwendungsleistung für den Spanner-Graphen gilt. Weitere Informationen Best Practices für die Leistungsoptimierung von Spanner Graph, siehe Best Practices für das Entwerfen eines Spanner-Graph-Schemas und Best Practices für die Abstimmung von Spanner Graph-Abfragen.
Daten zu Spanner Graph migrieren
Weitere Informationen zum Verschieben von Daten aus einer relationalen Datenbank finden Sie unter Daten aus Daten.
Um Daten aus einer Grafikdatenbank oder einer nicht relationalen Datenbank zu verschieben, können Sie aus der Quelldatenbank in Dateien umwandeln, diese in Cloud Storage hochladen, und importieren die Dateien dann mit Dataflow. Empfohlene Dateiformate einschließlich AVRO und CSV. Weitere Informationen finden Sie unter Empfohlene Formate für Bulk-Uploads Migration.
Einschränkungen verarbeiten
Wenn für Ihr Schema Einschränkungen für Eingabetabellen definiert sind, achten Sie darauf, dass diese Einschränkungen beim Datenimport nicht verletzt werden. Zu den Einschränkungen gehören die Folgendes:
- Fremdschlüssel: Es kann eine Fremdschlüsseleinschränkung für die auf einen Knoten verweist.
- Verschränkung: Eine Edge-Eingabetabelle kann in einer Knoteneingabe verschränkt sein. . Durch diese Verschränkung wird eine Über-/Untergeordnet-Beziehung definiert, mit dem implizite Einschränkung, dass das übergeordnete Element vorhanden sein muss, bevor das untergeordnete Element erstellt wird.
Das übergeordnete Element in einer verschachtelten Organisation und die referenzierte Entität in der Fremdschlüsseleinschränkung müssen zuerst geladen werden. Das bedeutet, dass Sie zuerst Knoten im Diagramm und laden Sie dann die Kanten. Wenn Sie Kanten vor dem Laden laden Knoten, mit denen die Kanten verbunden sind, können während des die darauf hinweisen, dass bestimmte Schlüssel nicht vorhanden sind.
Um die richtige Importreihenfolge zu erreichen, verwenden Sie von Google bereitgestellte Vorlagen, um separate Dataflow-Jobs für jede Phase erstellen und die Jobs dann in Sequenz hinzufügen. Sie können z. B. einen Dataflow-Job ausführen, Knoten und anschließend einen weiteren Dataflow-Job ausführen, um Edges zu importieren. Alternativ können Sie einen benutzerdefinierten Dataflow-Job schreiben, der die Importsequenz verwaltet.
Weitere Informationen zu von Google bereitgestellten Vorlagen finden Sie hier:
Wenn Sie die Daten in der falschen Reihenfolge importieren, schlägt der Job möglicherweise fehl oder es liegt nur ein Teil Ihrer Daten vor. migriert werden. Wenn nur ein Teil Ihrer Daten migriert wird, führen Sie die Migration aus noch einmal.
Effizienz beim Laden von Daten verbessern
Erstellen Sie sekundäre Indexe und definieren Sie Fremdindexe, um die Effizienz beim Laden von Daten zu verbessern nachdem Sie die Daten in Spanner importiert haben. Dieser Ansatz ist nur beim anfänglichen Bulk-Ladevorgang oder während der Migration mit Ausfallzeiten möglich.
Datenmigration überprüfen
Führen Sie nach der Migration Ihrer Daten einfache Abfragen durch, um die Daten zu verifizieren. Richtigkeit. Führen Sie die folgenden Abfragen für Quell- und Zieldatenbanken aus um zu überprüfen, ob die Ergebnisse übereinstimmen:
- Zählen Sie die Anzahl der Knoten und Kanten.
- Zählen Sie die Anzahl der Knoten und Kanten pro Label.
- Berechnen Sie Statistiken (Anzahl, Summe, Durchschn., Min., Max.) für jeden Knoten und jedes Edge-Attribut.
Umstellungs- und Failover-Mechanismus konfigurieren
Umstellungs- und Failover-Mechanismen konfigurieren