Lichterloh hat geschrieben:Mich schreckt das alles ein bisschen arg ab von dem System. Wenn ich mir vorstelle wie lange es bei vielen Zugriffen und einer großen Seite braucht bis eine Suche diese Datenmenge durchsucht hat bin ich sehr skeptisch ob der sinnvollen und optimalen Datenbankstruktur von Contenido.
skepsis ist nicht schlecht. ob sie angebracht ist oder nicht, dazu möchte ich mich an dieser stelle aus rücksicht auf die forenregeln (!) ausdrücklich nicht äussern.
aber deine bewertungsstrategie ist - mit verlaub - von geringem wert. die grösse lässt sich nur verringern, wenn du die datenmenge verkleinerst (von einer komprimierung einmal abgesehen, die ja aber auch wieder auf die leistung durchschlägt). die frage ist also nicht, ob gross oder nicht. sondern allenfalls, ob sich darin unnötige informationen befinden oder eben nicht. wenn du nun hingehst und verschiedene systeme anhand des speicherverbrauchs vergleichst, dann wirst du das system auswählen, dass am wenigsten daten bereit hält. db-grösse korreliert aber nicht mit qualität; umgekehrt ist ein kleines speichervolumen keine funktion optimaler datenorganisation, sondern in erster linie folge einer geringen datenmenge. eine bessere datenorganisaton wird das volumen beeinflussen - es kann sie verkleinern, aber auch vergrössern; und die frage der systemleistung ist eben noch einmal eine andere und ist überhaupt nicht mit der grösse korreliert, jedoch mit der normalisierung.
du hast aus allen möglichkeiten einen einfachen indiktor herausgegriffen. die datenmenge. bei einem haus entspricht das dann z.b. der kubatur. und du glaubst aufgrund dieser messgrösse die systemfitness bewerten zu können. bei einem haus kannst du damit weder die lage, die bausubstanz, die schönheit, die verkehrsanbindung, die fläche, den umschwung noch sonst eine relevante grösse bemessen. dieses vorgehen wird nicht zum erwarteten ergebnis führen. dein anspruch ist durchaus komplex und lässt sich nicht ohne weiteres auf einen einzelindikator reduzieren.
der speicherplatz ist in der regel preisgünstig zu kriegen. spielt insofern eine untergeordnete rolle. das db-modell sollte idealerweise zunächst optimal normalisiert und anschliessend zum zweck bester leistung hinreichend denormalisiert sein. den normalisierungsgrad kannst du einfach feststellen. wie die optimierung in bezug auf die leistung aussieht, musst du empirisch ermitteln. dabei spielt dann freilich nicht nur die db eine rolle, sondern alles drum herum auch. wenn du eine einfache taxonomie anwenden willst, wären primär fünf faktoren zu berücksichtigen:
- die systemleistung. als indiktor kann hier vereinfacht das produkt aus cpu-last und ausführungsdauer zur ausgabe einer seite dienen, bei gleichzeitigem lastaufbau.
- die datenorganisation. das beeinhaltet frelich auch die db. aber nicht in erster linie. die frage ist ja auch, wie du mit den daten im system umgehen muss.
- die qualität des benutzerinterfaces. immerhin willst du damit ja auch arbeiten.
- die flexibilität. was heute gut ist, muss morgen vielleicht anders aussehen. anpassungen sollten also möglich sein.
- die features. aber hier gilt es nicht einfach zu zählen, sondern zunächst die eigenen bedürfnisse zu formulieren. dann schauen, welche davon erfüllt werden. und nur diejenigen, die sowol in deiner bedarfsliste stehen und auch vom system bereit gestellt werden, sollten dabei berücksichtigt werden. alle übrigen features sind in einer solchen betrachtung wertfrei.
von der auswahl aufgrund der datenbankgrösse würde ich dir unbedingt abraten. das ergebnis wird dann einfach zufällig sein. dann nimmst du besser das erste oder letzte aus einer liste oder das, welches genau in der mitte liegt. und in foren der betroffenen systeme zu fragen, ob das produkt gut sei oder nicht (egal nach welcher massgabe), kann man sich ebenfalls getrost sparen. wer wird schon sagen, dass sei nicht der fall?