Das Shop-System wechseln – so gelingt die Daten-Migration
Die letzten Jahre haben für die gesamte E-Commerce-Branche etliche Neuerungen mit sich gebracht. Es gab neue Funktionen, neue Zahlarten, neue Wege bei der Suchmaschinenoptimierung und den multimedialen Produktbeschreibungen. Das alles sind nur ein paar der vielen guten Gründe, warum sich Betreiber mit neuen Shop-Systemen auseinandersetzten sollten. Denn was man oft teuer und mühsam in ein älteres, vielleicht sogar selbstgestricktes Shop-System hinein programmieren muss, liefern neue Systemen oftmals kostenfrei oder für wenig Geld ganz bequem mit. Und sollte sich das bisherige System erst gar nicht auf eine modernere Version updaten lassen, so bleibt dem Betreiber ohnehin nichts anderes übrig, als auf ein neues System zu migrieren. Da dabei andere Datenmodelle, Programmierungen und Produktdarstellungen anfallen, ist diese Aufgabe jedoch nicht ganz so leicht zu bewältigen. Doch mit einem gut durchdachten Plan lassen sich Stolpersteine erkennen und Probleme auf jeden Fall lösen.
Gut geplant ist halb migriert
Für eine reibungslose Übernahme der Shop-Daten sollte man auf jeden Fall wissen, welche Produkt-, Kategorie-, Bild- oder Kunden-Daten et cetera übernommen werden müssen, welche man manuell nachpflegen kann und welche nicht unbedingt relevant sind. Letztere können Bestell- oder Kundenhistorien sein sowie Meta-Angaben. Dazu geht man den bisherigen Shop durch und erstellt eine Liste. Wer etwas technisches Verständnis mitbringt und sich die Arbeit erleichtern will, kann hierbei gleich auch die notwendigen Tabellen heraussuchen.
Sollte es sich um einen Standard-Shop wie zum Beispiel osCommerce oder xt:Commerce handeln, sollte man im Vorfeld genau festlegen, welche Änderungen und Anpassungen an der Standardinstallation notwendig sind. Die kann man mithilfe von Weiterentwicklungen oder Erweiterungsmodulen realisieren. Will man fertige Migrations-Tools nutzen, ist zudem die Version des Shops relevant. Solche Analysen zeigen häufig auch vorhandene Schwächen. Oft wollen Shop-Betreiber zum Beispiel separate Produktbeschreibungen für Preissuchmaschinen anlegen, Artikel um EAN-Nummern erweitern oder eine neue Sprache aufnehmen. Auch diese neuen Wünsche und Ziele sollten an dieser Stelle dokumentiert werden.
Wege zur Datenübernahme
Mit dieser Basis geht es an das Mapping des bestehenden Datenbankschemas. Anhand dieses Schemas kann man recherchieren, ob ein fertiges Migrations-Skript funktioniert oder ob man die Daten individuell übernehmen muss. In beiden Fällen hilft eine schnelle Migrationsumgebung, auf der das bestehende System gespiegelt und das neue System installiert wird.
Notwendige Erweiterungsmodule sollte man erst nach der Migration ins neue System installieren, um das Zielsystem zunächst so originalgetreu und unverändert wie möglich zu belassen. In jedem Fall sollte man alle Schritte gut dokumentieren, da diese erfahrungsgemäß mehrere Male vollzogen werden müssen, bis die Migration erfolgreich durchläuft. Auch regelmäßige Backups sind empfehlenswert, um notfalls auf einen der vorherigen Schritte zurückgehen zu können. Zu beachten ist dabei auf jeden Fall, dass man die „foreign-key“-Checks (SETFOREIGN_KEY_CHECKS=0;) vor dem Import der Daten deaktivieren muss.
Tools wie „osCommerce Migration Tool“, „Shopware Migration“ oder „Cart2Cart“ sind gute Anlaufstellen, um Standardsysteme auf neue Shops zu migrieren. Die Kombination aus den Export-Tools des alten und Import-Tools des neuen Shops kann aber auch zu einem guten Ergebnis führen. Dabei lassen sich die Daten dann vor dem Import in den neuen Shop übrigens auch direkt in Excel erweitern, anpassen und korrigieren. Idealerweise kann man so alle relevanten Daten übertragen. Meist lassen sich diese fertigen Lösungen aufgrund der Anpassungen am Shop jedoch nicht hundertprozentig nutzen.
Jeder muss dann für sich abwägen, ob er die letzten Daten per Skript oder Handarbeit anpassen will – oder ob er doch eine individuelle Übernahme entwickeln muss. Für die Datenübernahme fallen mehrere Ebenen an, nämlich die Datenbank-, die Applikations- und die File-Ebene. Wie man dann genau vorgeht, ist im Grunde Geschmackssache: Die einen schreiben SQL-Statements, bereiten dann die Daten per Applikationslogik auf und kopieren diese anschließend mithilfe eines Secure-Copy-Protokolls von einem Shop in den anderen. Andere schreiben ein Programm in ihrer bevorzugten Programmiersprache und führen die Datenübernahme dann auf Skript-Basis durch. Handelt es sich um wenige Daten, die man in diesem Zuge ohnehin optimieren will, kann es sogar sinnvoll sein, die Daten einfach neu einzugeben.
Stolpersteine bei der Migration
Leider läuft bei der ersten Migration selten alles problemlos ab. Dazu kommt, dass man oft erst im neuen Shop feststellt, was eigentlich so genau alles schiefgelaufen ist. Den Fehlern, die am häufigsten gemacht werden, kann man mit den folgenden Fragen und Tipps auf die Spur kommen:
- Entsprechen die Nummernkreise von Produkten, Rechnungen, Bestellungen und anderem den eigenen Wünschen? Wenn nicht, hilft es oft, vor der Migration die „Auto_Increment“-Werte entsprechend zu erhöhen.
- Sind aus konfigurierbaren Produkten – also solchen mit Größenauswahl und Ähnlichem – im neuen Shop auf einmal viele Einzelartikel geworden? Hier hilft meist nichts anderes weiter als ein manueller Eingriff nach der Migration.
- Haben sich Preise um einen Cent verändert? Oft kommt es zu Rundungsproblemen, die man aber nach der Migration anpassen kann.
- Sind die Artikel den richtigen Steuerklassen zugeordnet oder wird zum Bruttopreis nochmals die Mehrwertsteuer aufgeschlagen? Zur Problemlösung muss man hier noch mal die Migrationsschritte prüfen.
- Sind die Bilder zu klein oder zu groß? Dann hilft teilweise nur noch ein manueller Eingriff.
Ein häufiges Problem bei der Migration sind die Caching-Mechanismen der Shopsysteme. Gerade bei Magento muss man darauf achten, dass die automatische Indexierung deaktiviert wird.
Migriert ist noch nicht fertig!
Wenn man es nun endlich geschafft hat und alle Daten auch wirklich korrekt im neuen System vorliegen, ist die Migration noch lange nicht fertig. Denn jetzt geht es darum, die Daten anzupassen, die sich während der Migration nicht automatisch anpassen ließen. Als erstes sollte man die Module und Add-ons installieren und konfigurieren, die man für sein neues Shop-System braucht, sowie die Standardanpassungen am Shop vornehmen. Die Texte und Layouts von E-Mails sowie PDF-Dateien werden dabei häufig übersehen. Doch auch sie sollten an die neuen Wünsche und Gegebenheiten angepasst werden. Zieht die Migration zum neuen Shop auch neue URLs für die Produkte nach sich, so muss man sicher stellen, dass entsprechende Rewrite-Rules definiert werden. Andernfalls erhalten Besucher künftig unnötig 404-Fehler-Seiten und Google muss den neuen Shop gar erst einmal komplett neu crawlen.
Wer mit seinem Ergebnis zufrieden ist, kann anhand der – während der bisherigen Test-Migration angefertigten – Dokumentation nun die echte Migration in der Live-Umgebung durchführen. Damit es dabei nicht zu einer Dateninkonsistenz kommt, sollte man während dieser Zeit den Zugriff auf den Shop von außen mittels IP-Restriction oder Ähnlichem sperren. Eine informative Wartungsseite wird die Kunden sicher vertrösten können.
Alternativen zur Migration
Die Migration eines Shops ist aufwendig und anstrengend – mit einem Wort: Es ist nichts, was man gerne machen möchte, wenn es sich nicht doch irgendwie umgehen lässt. Eine Alternative kann unter Umständen sein, die Datenhoheit in ein Warenwirtschafts- oder ERP-System zu verlagern. Auf diese Weise muss man die Shop-Daten nur einmal in eines dieser System migrieren – und ist dann im Frontend flexibel. Man hat fortan die freie Wahl, welches Shop-System man nutzen möchte. Natürlich sollte man dabei in Ruhe das optimale Warenwirtschafts- oder ERP-System wählen, damit dann nicht schließlich doch eine neue Migration notwendiger ist – diesmal allerdings auf Backend-Ebene, was oft noch komplexer ist als eine Shop-Migration.
Fazit
So aufwendig und teilweise auch nervenaufreibend die Migration eines Shops sein kann: Eine gute Planung ist der wichtigste Garant dafür, dass die Migration vorhersehbar abläuft und man so viele Fehler wie möglich vermeiden kann. Darüber hinaus spart eine gute Planung jede Menge Nerven. Denn gerade bei großen Datenmengen kann die Übernahme schon mehrere Stunden laufen. Wer diese Prozedur dann auch noch mehrfach durchlaufen muss, ist bald strapaziert. Wer jedoch alle oben genannten Überlegungen sorgfältig anstellt und sich gut auf die Migration vorbereitet, ist für so eine Umstellung auf jeden Fall gut gewappnet. Gerade mit Blick auf die Zukunft sollte jedenfalls kein Shop-Betreiber vor solch einem zum Teil sehr sinnvollen und notwendigen Schritt zurückschrecken.