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

SELFPHP


Professional CronJob-Service

Suche



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



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: 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:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 08.01.2009, 07:12:23
Benutzerbild von Darelius
Darelius Darelius ist offline
Anfänger
 
Registriert seit: Apr 2008
Ort: Lübeck
Alter: 49
Beiträge: 61
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 07:12:46 Uhr)
Mit Zitat antworten
  #2  
Alt 08.01.2009, 11:59:48
schrubba schrubba ist offline
Anfänger
 
Registriert seit: May 2008
Beiträge: 110
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 MySQLi/PDO/(MySQL) 0 06.09.2008 14:45:08
Mysql startet nicht oberonal MySQLi/PDO/(MySQL) 3 24.11.2006 10:41:31
MySQL Page Script. Problem. dtone MySQLi/PDO/(MySQL) 8 15.10.2006 15:58:06
MySQL Connect Problem DanielEXQ2 PHP Grundlagen 8 14.05.2005 03:07:55
MySQL - ORDER BY RAND() und PHP MacMarc PHP Grundlagen 15 05.12.2002 23:23:39


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:26:42 Uhr.


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


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