Was ist der Unterschied zwischen Datenbanksystem und dateibasierte System?

1 Antwort

Das ist relativ einfach erklärt. Bei einem dateibasierten Ansatz liegen die Daten nur dieser Anwendung vor. Die Daten können im ersten Ansatz nur von diesem Programm bearbeitet und verändert / gelesen werden.

Zum einen wissen so andere Anwendungen nichts davon, was zur Isolierung führt. Weiterhin kommt es ggf. zur Redundanz da du in den verschiedenen Anwendungen teilweise mit den gleichen Daten arbeitest. Die Daten von App1 bekommen natürlich von der Änderung in App2 nichts mit.

Noch viel schlimmer ist die Abhängigkeit. Sagen wir mal du hast die Daten aber nicht das Programm, so kannst du diese wahrscheinlich nicht öffnen, ändern, lesen. Ggf. legt das Programm sogar die Daten verschlüsselt ab, was wieder schwer wird.

Weiterhin hast du ein WirrWarr von Datenformaten. Jeder verwendet seine Extension (Dateiendung) und natürlich sein Format. Kompatibilität zwischen den Systemen (Linux, Windows, Apple, ..) sind da nicht mehr gegeben.

Nehmen wir an ich habe einen Outlook Kalender und trage da Urlaubsdaten ein. Weiterhin führe ich eine Personalliste in Excel. Jetzt ändert sich der Nachname, weil jemand geheiratet hat. Der Outlook Kalender bekommt davon nichts mit. Weiterhin habe ich die Redundanz, weil ich ja genau den gleichen Mitarbeitern - wie in der Excel Liste - im Kalender Urlaub eintrage.

Bei einem DBMS habe ich eine zentrale Datenhaltung. Es gibt weiterhin Gesetze z. B. Normalformen, Normalisierung.

Die Daten sind zentral an einer Stelle, es gibt auch Abhängigkeiten z. B. referentielle Intigrität.

Vom Prinzip kann ich nun 100 Front-End-Systeme entwickeln die alle auf den gleichen Daten arbeiten. Die eine Abteilung sieht nur dies, die andere das usw. Ich kann normalerweise auch einzelne Tabellen erweitern weil ich dies für App1 benötige, App2 bekommt das überhaupt nicht mit.

Vorallem alle können mit den Daten arbeiten weil es eine einheitliche Struktur gibt. Ich kann die Datenbank auch portieren und irgendwo anders betreiben.