Drupal und die nicht optimierte Datenbank

Drupal kann viel, darüber sind wir uns einig, was Drupal allerdings nicht gut kann, ist eine Datenbank so zu generieren, dass aufgrund geeigneter Indizes eine schnelle Datenauswahl möglich ist. Das Code-Modul ist dabei ganz gut aufgestellt, und dem CCK ist eigentlich auch keine Schuld zuzusprechen, da es ja nur für die Datenerfassung zuständig ist. Schuld ist eher die vollkommen offene Architektur von Drupal, und somit das Views-Modul.

Dies ist kein Nachteil von Drupal, eher im Gegenteil! Zusammen mit dem CCK und Views kann ich jede erdenkliche Datenstruktur in Drupal abbilden und in jeder beliebigen Form darstellen. Dabei ist die Datenbank durchaus normalisiert und setzt man zusätzlich eine Taxonomy ein, dann kann es durchaus passieren, das ein Join über mehrere Tables durchgeführt wird, die durchaus keinen Indexe besitzen.

Bei einem „kleinen Blog“ wird dies nicht weiter auffallen, aber wenn man von größeren Seiten mit größeren Datenbeständen ausgeht, führt das schnell zu einem Problem. Hier werden die Anfragen in MySQL so langsam, dass eine geeignete Suche nicht möglich ist. Hier kann man sich entweder auf das Caching von Drupal verlassen, oder die Datenbank optimieren. Dies kann auf zwei Arten erfolgen:

a)      Per Hand (z. B. mit phpMyAdmin)
b)      Mittels des Plugins DB Tuner

Letzteres ist durchaus die einfachere Möglichkeit, die durchaus noch Optimierungsmöglichkeiten am Core gefunden hat, die einfach eingebunden werden können. Gerade bei großen Datenmengen, bei denen der Benutzer die Daten selbst filtern kann, und somit das Caching vor Problemen gestellt wird, spielen die Optimierungen ihre volle Leistung aus. Wer mit Views arbeitet, sollte sich das Plugin einmal ansehen, es macht sehr viel Sinn!

Ähnliche Beiträge

Artisteer – Web Design Baukasten Eher durch Zufall bin ich heute auf der Smarty-Homepage über eine Google-Ad für Artisteer gestolpert. Ein Produkt, das ich bisher so noch nicht kannte...
Drush – Die Drupal Shell Manche Sachen sind in Drupal wirklich nervig, vor allem dann, wenn man als Webhoster in der Shell arbeitet und ständig zum Webbrowser wechseln muss. I...
Drupal, die White Screen of Death und das Byte Ord... Was ein Titel – hollywoodtauglich! :) Aber durchaus mit einem Hintergrund: Drupal kann in einen Zustand geraten, wo es außer einer weißen Seite (der W...
Drupal Backend mit iPhone & iPad Der Administrationsbereich von Drupal ist zugegebenermaßen maximal anstrengend, besitzt aber den Vorteil auch maximal anpassbar zu sein. Im Gegensatz ...

3 Antworten auf „Drupal und die nicht optimierte Datenbank“

  1. Wird das plugin dauerhaft benötigt oder eher nur punktuell? Also ordne ich damit meine DB oder verändert das Plugin vielmehr die Schnittstelle, so dass es permanent implementiert sein muss?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.