mySQL vs. Textdateien

MySQL, PostgreSQL, SQLite
freeze24
Posts: 11
Joined: 2004-06-21 15:25
Location: Bayern/Oberpfalz

mySQL vs. Textdateien

Post by freeze24 » 2006-01-15 17:06

Hallo,
ein Bekannter von mir betreibt eine Online-Community.
Derzeit sind etwa 5000 Mitglieder angemeldet. Die gespeicherten Daten belaufen sich auf etwa einem Gigabyte. Bislang ist alles in Textdateien gespeichert.
Die Community wächst stetig, weshalb wohl in absehbarer Zeit Datenmengen von mehreren Gigabyte zustande kommen werden.

Nun stellt sich die Frage:
Wieviele Daten kann eine mySQL Datenbank bewältigen ?
Und wie sind die Zugriffszeiten im Vergleich zu Textdateien ?

Ist es ratsam, auf mySQL umzusteigen, oder sollte man doch lieber an Textdateien festhalten ?


/e: Ich hoffe, ich hab die richtige Kategorie für meine Frage gewählt :-?

outofbound
Posts: 470
Joined: 2002-05-14 13:02
Location: Karlsruhe City

Re: mySQL vs. Textdateien

Post by outofbound » 2006-01-15 18:12

200 KB pro Kopf?

Das kommt drauf an, was das für Daten sind und wie du darauf zugreifst.
Datenbanken sind dazu gebaut, schnell Daten auszulesen und zu aggregieren. Wenn du also oft einen Datensatz X aus einer Menge Y benötigst, dann sind Datenbanken schneller als Flatfiles. Wenn du das ganze sowieso immer Sequenziel abratterst, dann sind Flats besser.
Generell ungeeignet sind sie, um Binärdaten abzulagern, da sind Flatfiles wesentlich besser geeignet.

Um dir helfen zu können, wäre nützlich zu wissen um was für Daten es sich genau handelt.

Und noch als Tipp: Datenbankdesign ist eine Form von schwarzer Magie, man kann da viel falsch machen, aber auch viel Performance herausholen. ;)

Gruss,

Out

braindead
RSAC
Posts: 257
Joined: 2002-10-22 09:49
Location: vorm Rechner

Re: mySQL vs. Textdateien

Post by braindead » 2006-01-15 18:23

Wieviele Daten kann eine mySQL Datenbank bewältigen ?
wie groß ist deine Festplatte? Grundsätzlich gibt es in myslq keine beschränkung der Datenbankgröße (näheres hier http://dev.mysql.com/doc/refman/4.0/de/myisam.html oder hier http://dev.mysql.com/doc/refman/4.0/de/ ... tions.html je nach gewünschtem tabellen typ).
Und wie sind die Zugriffszeiten im Vergleich zu Textdateien ?
kommt drauf an würde ich sagen. wenn du die richtigen Indices gesetzt hast dann um einiges schneller, aber das ist abhängig von datenmenge usw. Wie schon gesagt, das Design ist alles!

encbladexp
Posts: 84
Joined: 2006-01-04 12:09
Location: Lichtenfels

Re: mySQL vs. Textdateien

Post by encbladexp » 2006-01-15 18:40

Eine andere alternative zu "klassichen" Datenbanken wie MySQL/PostgreSQL wäre auch sqlite, das hat vor allem den Vorteil das man keinen DB-Server braucht...

Kommt natürlich drauf an was genau du wie machen willst/musst...

mfg Betz Stefan

freeze24
Posts: 11
Joined: 2004-06-21 15:25
Location: Bayern/Oberpfalz

Re: mySQL vs. Textdateien

Post by freeze24 » 2006-01-16 13:27

Das sind eigentlich nur Texte, die gespeichert werden würden.
Gästebucheinträge, Informationen über den User und solche Sachen, wobei die Gästebucheinträge den größten Teil ausmachen.

Jeder Nutzer hat seine eigene kleine Page, auf der Informationen über ihn und die letzten 10 Einträge in seinem Gästebuch angezeigt werden.
D.h. diese Daten werden bei jedem Zugriff auf die Page eines Users abgefragt.
Außerdem gibt es noch Statistiken, die anzeigen, welcher User gerade online ist, oder welcher User am aktivsten ist (also am meisten Gästebucheinträge geschrieben hat).
Wer am jeweils heutigen Tag Geburtstag hat usw.

Solche Sachen sollten, denke ich, aus einer Datenbank schneller auszulesen sein, oder ?


Die verwendete Festplatte ist sicherlich groß genug, ich dachte nur, dass wenn die Datenbank zu groß wird, die Zugriffszeiten ins unermessliche wachsen. "Bewältigen" ist also nicht im Sinne von speichern sondern von tatsächlich verwalten und schnell zugreifen gemeint.



Es ist also in der Tat so, dass ich oft "oft einen Datensatz X aus einer Menge Y benötige".


Was sollte man denn beim strukturellen Aufbau einer Datenbank beachten ?
Wie gesagt: In die Datenbank kommen kurze Informationen über jeden User, der Inhalt der Pages der User (<-- ist das sinnvoll ?), alle Gästebucheinträge und noch anderes was nichts direkt mit Usern zu tun hat und deshalb nicht sehr viel Platz beansprucht. (z.B. Veranstaltungskalender, o.ä.)




@encbladexp
Leider steht uns nur mySQL zur Verfügung, wir haben keine Root-Rechte für den Server.

braindead
RSAC
Posts: 257
Joined: 2002-10-22 09:49
Location: vorm Rechner

Re: mySQL vs. Textdateien

Post by braindead » 2006-01-16 14:28

also bevor du mit dem Design anfängst würde ich dir dringed raten ein Buch über datenbanken zu kaufen und das zu lesen ;) Sonst wirdst du schneller als die lieb ist mit Zugriffszeiten im unendlichen enden ...

encbladexp
Posts: 84
Joined: 2006-01-04 12:09
Location: Lichtenfels

Re: mySQL vs. Textdateien

Post by encbladexp » 2006-01-16 18:58

Also wenn das so ist, dann wäre ne DB wirklich schneller... Ob sqlite geht müsstest du prüfen, kann sein muss aber net...

Datenbank kann man auch wieder tunen, z.B. durch gut platzierte indexe usw... aber ich würde dir auch raten da ein buch zu kaufen...

mfg Betz Stefan

freeze24
Posts: 11
Joined: 2004-06-21 15:25
Location: Bayern/Oberpfalz

Re: mySQL vs. Textdateien

Post by freeze24 » 2006-01-17 20:47

Alles klar.
Vielen Dank für Eure Tips und Infos!


Man wird hier bei Problemen wirklich immer sehr gut beraten :)