Migrieren von Daten aus einer relationalen DB zu NoSQL
Ist es möglich/gibt es tools/best practices etc., um Daten zu migrieren, um eine NoSQL-format aus einer relationalen DB.
Ich habe eine JEE6-app die Nutzung von Hibernate ORM beibehalten zu MySQL aber jetzt wollen wir zu bewegen, um NoSQL-Lösung, sondern Notwendigkeit, um die vorhandenen Daten mit uns
Dank
W
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es einige Werkzeuge, um die migration, aber am Ende, MySQL ist eine relationale Datenbank, die eine völlig andere Struktur von noSQL-Datenbanken.
In der end, Sie werden haben fast immer diese vier Schritte erklärt in dieser Artikel (bezieht sich auf mongoDB, und Sie wollte nicht angeben, aber es gilt für alle):
Die Dinge zu vereinfachen ein bit, eine Oracle-Datenbank würde die vollständige Beherrschung über das, was wird in der Datenbank gespeichert. Oracle oder jede RDBMS, dies zu tun wäre durch die Pflege von Beziehungen zwischen Blöcken von Daten, die in Tabellen gespeichert.
Einem Dokument Basierten Datenbank auf der anderen hand Läden meist die , wie die Daten, die verbraucht wird, in das system. Es erreicht dies mit Hilfe der Schlüssel-Wert-Paare, mit den Tasten spielen, bestimmte zentrale variable innerhalb.
Es hängt von der Komplexität des Systems, das migriert wird, auf Mengen, Funktionen etc. Obwohl es gibt mehrere Möglichkeiten, um die Migration von einem RDBMS auf eine json-basierte Datenbank, eine standard-Ansatz würde bedeuten, konstruieren Aussicht auf die vorhandene SQL-DB und Migration in Phasen.
Natürlich ein fundamentaler Prozess in einer solchen migration ist die beginnen mit der Schema-re-design als ersten Schritt. In einem Dokument Struktur wie Mongo JSON oder BSON, die meisten Eltern-Kind-Beziehungen untergebracht werden können in einer einzigen Struktur(oder ein Dokument). Zum Beispiel, Person_ID, Car_Ownership_ID können beide kombiniert werden, um die Herstellung einer einzelnen json-Dokument listet alle Besitzer eines Autos.
Ein Sound-schema-design-Prozess halten würde, in der bestimmte Ziele unter Berücksichtigung, während denormalizing die vollständig normalisierte Datenbank im RDBMS. Als eine gute zweiten Schritt, die meisten JOINs müssen kombiniert werden in verwobenen Sammlungen für einen leichteren Zugang mit der Ausnahmen von bestimmten äußeren Verknüpfungen.
Sobald das Schema fertig ist, einen ETL-Prozess oder eine substitutive Skript kann verwendet werden zum extrahieren, transformieren und laden der neueren Schaltplan mit einem Replikat der Daten im RDBMS.
Migrieren von Daten auf NoSQL. Meiner Meinung nach, MongoDB ist eine gute Wahl. Es gibt ein tool, Tapdata Replikator, replizieren kann, MySQL, Oracle, SQLServer zu MongoDB.
Es lässt Sie die Quelldatenbank und Zieldatenbank aus, und ordnen Sie die Daten von der Quelle zum Ziel. Sie können die neuen Daten-Modell in MongoDB ohne codes.
Zum Beispiel gibt es 20 Tische in der Quell-db-MySQL können Sie das design der Daten-schema in MongoDB integrieren, in 3-oder 5-Sammlungen. Sie können auch wählen Sie 1:1
Klon.
Habe ich die M110JS "MongoDB für Node.js Entwickler" - Kurs von Mongo-Universität https://university.mongodb.com/ und kann von ganzem Herzen empfehlen (es ist kostenlos).
Abgedeckt (ich denke, nur in einer von seinen Wochen) die Unterschiede zwischen SQL und NOSQL, wie wenn Sie nicht zu benutzen Fremdschlüssel, sondern einbetten von Dokumenten, riskieren, Duplikate usw. und wie es zu handhaben.
Es startet nur jeder so oft, so ist dies nur ein langfristiger Ansatz.