php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.08.2006, 23:39  
Neuer Benutzer
 
Registriert seit: 28.08.2006
Beiträge: 5
Davido
Standard Wie viele Felder können in eine Datenbank

Hallo an alle

...und schon wieder hat sich mir eine Frage aufgetan:

Wie viele Spalten darf eine Datenbank eigentlich haben. Beeinflussen viele Spalten irgendwie die Geschwindigkeit eines Scripts?

Ich habe jetzt eine Tabelle mit fast 30 Spalten erstellt. In diese sollen ca. 20000 Zeilen eingefügt werden. Ist das "schädlich"?


Vielen Dank für die Antworten
Davido ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.08.2006, 23:50  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Ob 20.000 Einträge mit 30 Spalten schon ein Problem darstellen, kann ich nicht sagen.

Aber das dürfte wohl mal ein Fall sein, wo sich die Hinweise auszahlen, dass man nicht "select *" schreiben soll.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 30.08.2006, 00:12  
Neuer Benutzer
 
Registriert seit: 28.08.2006
Beiträge: 5
Davido
Standard

Benutze Select * nicht :-]
Aber würde halt trotzdem gern wissen, ob man die spaltenzahl lieber reduzieren und dafür auf einige informationen verzichten sollte, oder ob das noch kein problem darstellt.
Davido ist offline  
Alt 30.08.2006, 00:17  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

guck dir den verbrauchten speicherplatz der tabelle an.
performance-probleme beginnen bei ordentlichen datenbanken normalerweise dann, wenn die index-datei (nicht die tabelle selbst, sondern der index-baum auf platte!) einer tabelle vom speicher her größer wird als das verfügbare RAM des servers.
ordentlich indizieren nicht vergessen, und die nächsten 200 mio einträge sollten keine probleme bereiten.

grüße
axo
axo ist offline  
Alt 30.08.2006, 00:49  
Neuer Benutzer
 
Registriert seit: 28.08.2006
Beiträge: 5
Davido
Standard

okay, ca. 2,5KB pro Eintrag. Scheint mir ziemlich viel, oder?
Was verstehst du unter "ORDENTLICH indizieren"? Das Problem ist, dass die Datensätze immer mal wieder geändert werden müssen
Davido ist offline  
Alt 30.08.2006, 01:03  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Was speicherst du denn bei den 30 Spalten? Vlt. kannst du ja bestimmte Daten die du nur sehr selten brauchst in eine zweite Tabelle auslagern.

Ansonsten macht es eigentlich keine Probleme. Wir haben eine Tabelle mit 36 Spalten mit 50.000 Einträgen Ã* 240 Bytes (Durchschnitt). Ansich haben wir keine Probleme mit der Datenbank.
Flor1an ist offline  
Alt 30.08.2006, 01:39  
Benutzer
 
Registriert seit: 26.02.2005
Beiträge: 58
Madden
Standard

Okay, vielen Dank für die Antworten. Wenn ich doch schon bei unter 5.000 Einträgen Probleme bekommen sollte gebe ich nochmal bescheid. Vielen Dank!
__________________
freesms, free hosting uvm. 4 free:

>> www.msxstudios.de
Madden ist offline  
Alt 30.08.2006, 08:31  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Davido
okay, ca. 2,5KB pro Eintrag. Scheint mir ziemlich viel, oder?
Was verstehst du unter "ORDENTLICH indizieren"? Das Problem ist, dass die Datensätze immer mal wieder geändert werden müssen
denk doch mal nach, das gibt's doch nicht. ich hab gesagt du bekommst performanceprobleme, wenn der tabellen-index über die RAM-größe hinauswächst.
machen wir's einfacher: wenn du 2.5 KB pro zeile hast - wie viele zeilen musst du haben, damit die tabelle größer als 1024 MB wird? 419.000 ?

wieso löst du dein problem nicht experimentell? baust eine schleife, die ein paar millionen einträge in die datenbank reinhaut und schaust, was passiert?

grüße
axo
axo ist offline  
Alt 30.08.2006, 10:38  
Erfahrener Benutzer
 
Registriert seit: 12.07.2004
Beiträge: 219
d-jango zeigte ein beschämendes Verhalten in der Vergangenheit
d-jango eine Nachricht über ICQ schicken
Standard

Hmm.. würde auch mal vorschlagen, dass es hilfreich ist, was für Informationen du dort einträgst. Wenn du diese Frage ins Anfänger-Forum postest, würde ich mir auch mal Gedanken über die Modellierung der Datenbank machen... bzw. das da was nicht richtig ist...

__________________
http://www.fun2stay.de
d-jango ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MYSQL Datenbank sortieren, nach PHP Variablen ArtAndLife PHP Tipps 2008 4 11.04.2008 10:45
Mit php dynamisch Namen von Bildnamen sowie Pfad in mysql Datenbank speichern mallmis PHP Tipps 2008 1 19.11.2007 23:04
Datenbank Problem in Access TaStEn PHP Tipps 2006 2 21.03.2006 12:31
Mehrere Anwendungen eine Datenbank... Datenbanken 5 15.08.2005 11:22
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:33
[Erledigt] mysql datenbank anlegen...aber WIE??? PHP Tipps 2005-2 0 05.08.2005 19:33
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:32
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
Auslesen aus der Datenbank nixdorf PHP Tipps 2005 7 06.02.2005 21:40
leere felder entfernen PHP Tipps 2007 14 04.01.2005 10:59
Felder aus einer Datenbank auslesen PHP Tipps 2004-2 5 21.12.2004 20:03
Bestimmte Datenbank Felder nur einmal ausgeben Paulo PHP Tipps 2004-2 3 26.11.2004 16:39

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
probleme zu viele felder datebank, wieviel felder bei datenbank

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




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.