phpbar.de logo

Mailinglisten-Archive

AW: Grenzen von MySQL

AW: Grenzen von MySQL

Andreas Müller mysql at universalware.de
Don Mar 6 14:46:52 CET 2003


Hallo,

> Leider schneidet MySQL im Vergleich der Vorteile eben schlechter
> ab. Fertig und aus. Wenn's Dir nicht gefällt, dann kann ich es
> nicht ändern.

Also der Vergleich von Vorteilen ist nicht gerade sehr aussagekräftig.
Außerdem ist es sehr schwer die bessere Datenbank zu bestimmen.

Ich kann hier mal versuchen meine Meinung wiederzugeben: Ich habe selbst bei
uns recht viele Datenbanken getestet und auf ihre Praxistauglichkeit für
unsere Anwendungsfälle untersucht. Diese reichen von Anwendungen im ERP
Bereich in Monolitischer- bis Multi-Tier-Architektur bishin zu kleinen oder
größeren Webprojekten.
Ich kann mal ein paar Gedanken und Eindrücke zu verschiedenen Datenbanken
geben (Syteme getestet auf Win32/Linux):

Interbase:
Klein, recht einfach im Handling, ausreichend mächtige SQL Implementierung,
mittlerer Wartungsbedarf, sehr schlechter Optimizer, geringes Ausfallrisiko,
hohes Datenverlustrisiko bei leicht beschädigter Datenbank, hohe relativ
hohe Server Belastung im Dauerbetrieb

Oracle:
Sehr fettes System, recht kompliziert im Handling, sehr langsame und
aufwändige Adminstration, sehr mächtige aber eigenwillige SQL
Implementierung, hoher Wartungsbedarf, sehr guter Optimizer, hohes
Ausfallrisiko in Black Box Anwendungen da ständige manuelle Überwachung
nötig, mittleres Datenverlustrisiko bei leicht beschädigter Datenbank,
mittlere Server Belastung im Dauerbetrieb, merkwürdiges
Index-Aktualisierungsverhalten bei großen Tabellen teilweise mehreren
Stunden Rebuild Zeit, Administrator mit sehr guten Kenntnissen benötigt

DB2:
Sehr fettes System, recht komplizierte im Handling, sehr langsame und
aufwändige Adminstration, sehr mächtige aber eigenwillige SQL
Implementierung, hoher Wartungsbedarf, schlechter Optimizer, hohes bis sehr
hohes Ausfallrisiko in Black Box Anwendungen da ständige manuelle
Überwachung nötig, mitteres bis sehr hohes Datenverlustrisiko bei leicht
beschädigter Datenbank oder vollem Logfile, sehr hohe Server Belastung im
Dauerbetrieb, sehr hohe Latenzzeit bei Commandoausführung (weilweise 3-5
Sekunden)

MS-SQL:
Mittelfettes System, recht einfach im Handling, mitteprächtige
Administration, sehr mächtige aber eigenwillige SQL Implementierung,
mittlerer Wartungsaufwand, schlechter Optimizer, geringes Ausfallrisiko,
hohes Datenverlustrisiko bei leicht beschäigter Datenbank, mittlere
Serverbelastung im Dauerbetrieb, mitunter merkwürdiges Verhaltung bei
Sperren von Objekten

MySQL:
Sehr kleines System, recht einfach im Handling, verhältnismäßig aufwendige
Administration magels Tools ansonsten sehr reinfach, nicht ausgereifte SQL
Implementierung mit eigenwilligen Ergänzungen, geringer Wartungsaufwand,
sehr guter Optimizer, sehr geringes Ausfallrisiko, relativ geringes (MyISAM)
bis mittleres (InnoDB) Datenverlustrisiko bei leicht beschädigter Datenbank,
geringe Serverbelastung im Dauerbetrieb


Was mit an MySQL Fehlt ist die saubere SQL Implementierung. Wenn es diese
einmal geben sollte dann sehe ich kaum Gründe außer in extrem großen System
auf eine andere Datenbank zu gehen. Ich habe mit allen anderen Datenbanken
bisher schon heftige Datenverluste erlitten, mit MySQL noch nicht einen
einzigen. Außerdem lohnt ein Blick auf die Lizenzpolitik der
Datenbankhersteller.

Noch was tum Thema Stored Procedures und Views: Wenn man mal große
Anwendungen baut und sich nicht 100% auf einen Server festlegen will und
seine Anwendung auch pflegbar lassen will dann wird man sich sehr schnell
von diesen "Features" verabschieden. Denn sie bringen rein garnichts.
StoredProcedures sind nicht portabel und Views behindern Strukturänderungen
teilweise erheblich. Auch referrenzielle Integrität via Foreign Key Angaben
in Tabellen sind meiner Meinung nach tödlich für Strukturänderungen. Das
gehört für mich alles in den Abstraktionslayer der Anwendung, die weiss viel
besser was sie tut. Gerade bei Foreign Keys ist es oft das Problem Daten zu
importieren in einer angemessenen Zeit. Werd schonmal Systeme migiriert hat
kann ein Lied davon singen. Und das alles nur weil man den
Anwenungsentwicklern untersagen will was sie machen. Für mich die falsche
Stelle in der Datenbank.

Gruß,
Andreas Müller


-- 
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 


php::bar PHP Wiki   -   Listenarchive