SELFPHP: Version 5.8.1 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche


International PHP Conference


WebTech Conference



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



PHP Summit


Software Architecture Summit


:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 
HTML5 Days


JavaScript Days


:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Deine Leidenschaft ist die Unterwasserfoto-grafie?


Dann ist Qozido genau das Richtige für Dich!

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler ist da!

www.qozido.de

 


Zurück   PHP Forum > SELFPHP > MySQL

MySQL Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQL diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 08.01.2009, 06:12:23
Benutzerbild von Darelius
Darelius Darelius ist offline
Anfänger
 
Registriert seit: Apr 2008
Beiträge: 48
Darelius befindet sich auf einem aufstrebenden Ast
MySQL-Leistungsfrage

Hallo, ich habe eine kurze, einfache Frage, die Antwort dürfe (vermutlich) nicht so einfach sein, fürchte ich.

Ich bräuchte ein paar Angaben über Geschwindigkeit und Leistung von MySQL-Datenbanken, wie ich sie am besten benutze.

Soll man lieber mehrere Tabellen nehmen, die mittellang sind (mehrere ERkennungs-IDs), oder lieber wenige, dafür umso längere Tabellen nehmen (haben dann um die 20 oder mehr Einträge) oder lieber mehrere kurze Tabellen, die dann mehrfache Einträge für eine Information haben?

Da ich kein Datenbankprofi bin, hier eine Art Beispiel:

Ich habe mehrer IDs, die zusammen eine exakte, individuelle Zuordnung geben. Es sind (normalerweise) 6 ID-nummern, die damit in jeder Tabelle fest vorhanden sind.

Nun habe ich etwa 20-30 Daten über ein "Objekt", welche in der Tabelle oder den Tabellen gespeichert werden.

Mein Problem ist folgendes:

Ich könnte in einer Tabelle alle 20 bis 30 Angaben hintereinander erstellen, daß es praktisch eine Zeile ist, die ausgelesen wird und alles beinhaltet.

Die nöchste Option, ich könnte nur 2-3 Einträge haben und damit mehrer Zeilen für dieses eine Objekt, was aber die Anzahl der Spalten verkürzen würde.

Was ist nun sinnvoller, damit die Datenbank vor allem bei sehr velen Abfragen schnell ist? Mehrere, "kurze" Zeilen oder eine lange Zeile?

Um die Gegenfrage vorweg zu nehmen, wenn Informationen über das "Objekt" gebraucht werden, sind oft viele, aber nicht immer zwingend alle Angaben erforderlich (für die Berechnung braucht man beispielsweise nicht den "Namen" des Objektes).


...DX
__________________
Darelius, Keeper of the Elements

Geändert von Darelius (08.01.2009 um 06:12:46 Uhr)
Mit Zitat antworten
  #2  
Alt 08.01.2009, 10:59:48
schrubba schrubba ist offline
Anfänger
 
Registriert seit: May 2008
Beiträge: 110
schrubba befindet sich auf einem aufstrebenden Ast
AW: MySQL-Leistungsfrage

Hi,

was Du meinst, ist der Vergleich von normalisierten Tabellen und denormalisierten Tabellen. Wenn Du danach im Netz suchst, dann wirst Du massenhaft endlose Diskussionen darüber finden und nicht wirklich schlauer danach sein.

Nach meiner doch eher mageren Erfahrung kann man das nicht pauschal beantworten, es kommt ganz auf den Einsatz an. Hier mal meine Erkenntnisse aus persönlichen Testungen.

1. Ein z.B. "SELECT * FROM ..." ist der Performancekiller schlechthin bei denormalisierten Tabellen. Solltest Du Dich also für denormalisierte Tabellen entscheiden, vermeide das unbedingt.

2. Eine Anwendung basierend auf denormalisierten Tabellen hat einen noch, für mich persönlich entscheidenen Nachteil, sie sind schlecht bzw. nur mit erhöhtem Aufwand erweiterbar. D.h. willst Du ein neues Feature in Dein Projekt einbauen, musst Du an jede Abfrage ran, die auf diese Tabelle zugreift, bei normalisierten Tabellen hast Du dieses Problem nicht bzw. nicht in diesem Ausmaß.

3. Auf der anderen Seite erweist sich (unter Umständen) bei normalisierten Tabellen der PHP-Code etwas umfangreicher und dadurch träger, langsamer, aber das hängt auch stark von der Art des Projektes ab.

4. Zu stark normaliserte DB können auch durch die etlichen JOINS an Performance verlieren.


Wie gesagt, das ist nur meine Erfahrung und mein Projekt besteht aus einer gemischten DB, mit ca. 70% normalisierten Tabellen und der Rest ist denormalisiert.

Gruß
schrubba
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MySQL 4 "große" Abfragen coder90 MySQL 0 06.09.2008 13:45:08
Mysql startet nicht oberonal MySQL 3 24.11.2006 09:41:31
MySQL Page Script. Problem. dtone MySQL 8 15.10.2006 14:58:06
MySQL Connect Problem DanielEXQ2 PHP Grundlagen 8 14.05.2005 02:07:55
MySQL - ORDER BY RAND() und PHP MacMarc PHP Grundlagen 15 05.12.2002 22:23:39


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:04:18 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.


© 2001-2014 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt