Wie ziehen Daten um?

Sie stellen auf eine andere Software um, wollen aber die Daten aus der alten Software behalten? Dann machen Sie den Daten-Umzugs-Check!

DSCN2252

Exportieren der Daten

Zuallererst müssen Sie die Daten aus der alten Software herausbekommen.

  • Haben Sie vorher Ihre Daten in Excel oder Access verarbeitet, reicht ein Export als XML oder CSV.
  • Haben Sie eine Datenbank-basierte Anwendung (z.B. mit Web-Oberfläche) genutzt, sind SQL, besser aber XML, notfalls CSV das Exportformat der Wahl.
  • Nutzen Sie sonstige Windows-Programme, müssen Sie Glück haben: Bietet das Programm eine Export-Funktion? Wenn nicht, bleibt noch die Möglichkeit, die Programm-interne Datenbank auszulesen oder das intern verwendete Datenformat zu entschlüsseln. Doch auch da keine Bange – bestimmt findet sich ein Weg.

Importieren in die neue Software

Der Import in eine neue Software gestaltet sich kniffeliger. Die neue Software bietet idealerweise schon fertige Import-Funktionen an. Allerdings besteht die Gefahr, dass Ihre exportierten Daten nicht in dem Format sind, die Ihr neues Programm braucht. So ist XML nicht gleich XML. XML hat tausende Dialekte und um die exportierten Daten wirklich nutzen zu können, benötigen Sie ein Konvertierungsprogramm. Dieses lässt sich auch, falls nicht vorhanden, für den einmaligen Gebrauch programmieren.

Idealerweise bietet Ihre neue Software eine Web-API an, die die Einschleusung neuer Daten erlaubt, so beispielsweise bei Drupal-basierten Systemen. Auch Datenbank-basierte Systeme können einfach gefüllt werden, da Sie ja Zugriff auf die Datenbank haben. Hier hilft jeweils ein für den einmaligen Gebrauch entwickeltes Importprogramm.

IT-Know How von Launix

Haben Sie vor, zu migrieren oder haben Probleme mit geschäftskritischen Daten? Kontaktieren Sie uns! Sind Sie stattdessen an weiteren interessanten Artikeln interessiert, tragen Sie sich in den Beitrags-Verteiler von Launix ein!

Unterschiede Access vs SQL-basierte Datenbanken

Es gibt viele Datenbank-Systeme. In diesem Artikel möchte ich die grafische Datenbank-Oberfläche MS Access mit den eher technischen SQL-Datenbanken vergleichen.

Vorteil von Access: Einfacher Zugang

Der entscheidenste Vorteil von Access ist, dass Sie sofort loslegen können: Tabellen anlegen, Formulare kreieren oder generieren lassen, Abfragen und Berichte zusammenklicken. SQL ist da wesentlich technischer. Sie legen die Tabellen entweder über die SQL-Schnittstelle, also mit rohem SQL, an oder bedienen sich eines grafischen Tools. Bei Formularen, Abfragen und Berichten spätestens benötigen Sie Programmierkenntnisse oder einen Programmierer. Denn SQL-Datenbanken sind vorrangig als Datenanbindung für individuell programmierte Software geeignet. SQL-Datenbanken trennen die Darstellung und Editierung der Daten klar von der Verarbeitung und Speicherung.

Vorteil von SQL: Große Datenbestände und Netzwerke

SQL-Datenbanken sind prinzipiell über ein Netzwerk mit dem Anwender bzw. der Anwendung, die die Datenbank nutzt, verbunden. Dadurch erwächst der Vorteil, dass mehrere Nutzer auf die Datenbank zugreifen können. Das ist bei MS Access zwar auch möglich über eine Windows-Ordnerfreigabe, hat sich aber bei vielen Zugriffen als problematisch herausgestellt.

Sobald größere Datenmengen ins Spiel kommen, ist SQL klar im Vorteil. SQL-Datenbanken verwenden ausgefeilte Techniken wie z.B. Indizes, Caches, materialisierte Views und vieles mehr. Moderne SQL-Datenbanken arbeiten mit Terabyte-weise Daten, die über mehrere Rechner verteilt werden können und Millionen von Anfragen pro Sekunde gleichzeitig bearbeiten können. MS Access hat hingegen schon bei mehreren tausend Einträgen Probleme mit der Performance.

Unschönes Datenbank-Design ins Access

Die direkte Anzeige von Tabellen in Access führt zu einem fatalen Anwenderverhalten: Denormalisierten Tabellen. Was sind denormalisierte Tabellen? Das Thema hier auszuführen, macht keinen Sinn. Sehen Sie sich aber den Wikipedia-Artikel zu Normalisierung an, kann man erahnen, dass normalisierte Tabellen die optimale Speicherform sind, allerdings in Access schwer zu realisieren. Da sich normalisierte Tabellen in Access schwerer ansehen lassen (man müsste alles über Formulare und zwischengeschaltete Views erledigen), tendieren viele Access-Nutzer dazu, denormalisierte Tabellen zu erstellen. Das verbraucht unnötig Speicher und nachfolgende Analysen der Daten werden erschwert.

Plattformunabhängigkeit

Auch hier hat SQL die Nase vorn: Während MS Access nur auf einigen Windows-Versionen läuft, gibt es SQL-basierte Datenbanken auf jedem Blackberry, Android-Handy und -Tablet, Apple-Produkten, PCs, Servern und sogar eingebetteten Systemen wie Heizungsreglern. Gerade wenn Sie viel mobil unterwegs sind, kann ein Zugriff auf Ihre Unternehmensdaten übers Mobilfunknetz einen klaren Vorteil für Sie bedeuten.

Aufwendigere Anwendungsentwicklung bei SQL

Eine SQL-Datenbank kann nie allein dastehen. Für jede Datenbank muss immer eine dazugehörige Software programmiert werden, die die Formulare, Tabellen-Ansichten und Diagramme bereitstellt. Sie erkaufen sich quasi Flexibilität, Plattformunabhängigkeit und Performance mit höheren Einstiegskosten.

Fazit

Der Marktanteil von Access wird weiter schrumpfen. Doch die umständlichere Entwicklung mit SQL-Datenbanken wird viele, vor allem kleinere Firmen, noch davon abhalten. Für diese Anwender wird wohl eine Standardsoftware herhalten müssen, es sei denn, der Launix Data Organizer kommt vorher auf den Markt.

Launix Data Organizer

Bei der Arbeit mit der Vermarktung der LED-Wände bin ich auf einmal vom Anwendungsprogrammierer zum Anwender geworden. Auf einmal mussten Adresslisten mit Telefonlisten verknüpft werden, Kunden ein Auftrag, sowie eine Rechnung zugeordnet werden und das alles, ohne aus den Augen zu verlieren, welche Geschäftsprozesse wann wie und wo stattgefunden haben. Dabei ist mir aufgefallen, dass es momentan noch kein Tool gibt, die täglich anfallenden Daten zu Geschäftsvorfällen mit ständig wechselnden Schemen zu organisieren. Doch warum passen die momentan verfügbaren Tools nicht?

Excel

Excel (bzw. das von mir benutzte Libreoffice Calc) ist in der Tat das geeigneteste Tool für den Übergang. Man kann sofort loslegen, Tabellen anzulegen. Allerdings schon bei Fremdschlüsselbeziehungen stößt das Tool an seine Grenzen: Will ich pro Kunde mehrere getätigte Anrufe vermerken, muss ich entweder auf mehr Spalten ausweichen, die ich aber vielleicht noch anderweitig benutzen will. Oder aber ich nehme Datenverluste in Kauf und vermerke immer den zuletzt getätigten Anruf. Ersteres ist unsauber, letzteres ist manchmal sogar ein No-Go. Fazit: Einfach, schnell, aber unzureichend.

Bare Metal SQL

Auf der reinen MySQL-Datenbank zu arbeiten, vielleicht noch mit einem PHPmyAdmin als Unterstützung hat sich für mich als komplett unpraktikabel herausgestellt. Hier gingen zwar Fremdbeziehungen, wie z.B. dass ein Kunde mehrere Anrufe hat, super abzubilden, aber die Bedienoberfläche ist einfach grottig. Man kann sich lediglich die Einzeltabellen ansehen, nicht aber einen Verbund, den man anschließend bearbeiten könnte.

Individualsoftware

Individualsoftware, eigentlich mein Hauptberuf, ist für eine Firma der Größe absolut unpraktikabel. Es wäre zwar die passendste Lösung in der Hinsicht, aber der Aufwand dafür wäre einfach zu hoch, auch wenn ich die Stunden der Programmierer nur intern abrechnen würde.

Fazit

Momentan gibt es noch kein hinreichendes Werkzeug, Daten mit komplexen Datenschemen hinreichend zu strukturieren und zu organisieren. Alle bisherigen Lösungen haben mindestens eine Schwachstelle, die die Mitarbeiter von Firmen zu suboptimalen Lösungen zwingen, notfalls sogar Papierarbeit.

Update zum Oktober 2016

Das Thema Datenverwaltung hat uns nicht mehr losgelassen. Mit dem Produkt Launix FOP glauben wir, eine Lösung auf das oben geschilderte Problem gefunden zu haben. Launix FOP verbindet die Mächtigkeit von SQL-Datenbanken, einfachen Bedienoberflächen und geringem Preis bei voller Individualisierbarkeit.