OnWorks Linux- und Windows-Online-WorkStations

Logo

Kostenloses Online-Hosting für WorkStations

<Zurück | Inhalte | Weiter>

1.3. Datenbank-Engines


Während die von den Ubuntu-Paketen bereitgestellte Standardkonfiguration von MySQL vollkommen funktionsfähig ist und eine gute Leistung erbringt, sollten Sie einige Dinge berücksichtigen, bevor Sie fortfahren.


MySQL ist so konzipiert, dass Daten auf unterschiedliche Weise gespeichert werden können. Diese Methoden werden entweder als Datenbank- oder Speicher-Engines bezeichnet. Es gibt zwei Haupt-Engines, die Sie interessieren könnten: InnoDB und MyISAM. Speicher-Engines sind für den Endbenutzer transparent. MySQL wird die Dinge unter der Oberfläche unterschiedlich handhaben, aber unabhängig davon, welche Speicher-Engine verwendet wird, werden Sie mit der Datenbank auf die gleiche Weise interagieren.


Jeder Motor hat seine eigenen Vor- und Nachteile.


Es ist zwar möglich und möglicherweise von Vorteil, Datenbank-Engines auf Tabellenebene zu kombinieren, dies verringert jedoch die Effektivität der möglichen Leistungsoptimierung, da Sie die Ressourcen auf zwei Engines aufteilen, anstatt sie einer zu widmen.

• MyISAM ist das ältere der beiden. Es kann unter bestimmten Umständen schneller als InnoDB sein und bevorzugt eine schreibgeschützte Arbeitslast. Einige Webanwendungen wurden auf MyISAM abgestimmt (was jedoch nicht bedeutet, dass sie unter InnoDB langsamer werden). MyISAM unterstützt auch den Datentyp FULLTEXT, der eine sehr schnelle Suche in großen Textdatenmengen ermöglicht. Allerdings ist MyISAM nur in der Lage, eine ganze Tabelle zum Schreiben zu sperren. Dies bedeutet, dass jeweils nur ein Prozess eine Tabelle aktualisieren kann. Wie bei jeder Anwendung, die Tischwaagen verwendet, kann sich dies als Hindernis erweisen. Außerdem fehlt das Journaling, was die Wiederherstellung von Daten nach einem Absturz erschwert. Der folgende Link enthält einige Überlegungen zur Verwendung von MyISAM in einer Produktionsdatenbank1.

• InnoDB ist eine modernere Datenbank-Engine, die ACID-kompatibel ist2 Dies garantiert eine zuverlässige Verarbeitung von Datenbanktransaktionen. Schreibsperren können innerhalb einer Tabelle auf Zeilenebene erfolgen. Das bedeutet, dass mehrere Aktualisierungen gleichzeitig für eine einzelne Tabelle erfolgen können. Das Zwischenspeichern von Daten wird auch im Speicher innerhalb der Datenbank-Engine durchgeführt, was ein effizienteres Zwischenspeichern auf Zeilenebene statt auf Dateiblockbasis ermöglicht. Um die ACID-Konformität zu gewährleisten, werden alle Transaktionen unabhängig von den Haupttabellen protokolliert. Dies ermöglicht eine wesentlich zuverlässigere Datenwiederherstellung, da die Datenkonsistenz überprüft werden kann.


Ab MySQL 5.5 ist InnoDB die Standard-Engine und wird gegenüber MyISAM dringend empfohlen, es sei denn, Sie benötigen spezielle Funktionen, die nur für die Engine gelten.


Top OS Cloud Computing bei OnWorks: