zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden Alternativen zur Nutzung von (My)SQL?

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 04.04.2008, 00:14
Benutzerbild von domsson
Rookie @ HTML/CSS/PHP/SQL
neuer user
Thread-Ersteller
 
Registriert seit: 11.02.2008
Ort: Berlin
Beiträge: 88
domsson wird schon bald berühmt werden
Standard Alternativen zur Nutzung von (My)SQL?

Aloah ihr Profis,

ich bin ja aktuell (und bereits seit geraumer Zeit) dabei, mir selbst HTML, CSS, PHP, SQL und auch ein bisschen JavaScript beizubringen.

Zum (er)lernen habe ich fast ausschliesslich SELFHTML (HTML, CSS, JavaScript) und das Tutorial von #php (PHP, MySQL) genutzt.

Dementsprechend ist meine Art zu Coden ziemlich von diesen Quellen gepraegt. Aber immerhin hab' ich, so glaube ich, soweit alles ganz gut gerafft und hab' mich gleich mal mit 'nem groesseren Projekt zum Ueben angelegt.

Mein Wunsch war es, eine Page mit dazugehoerigem CMS zu bauen, die sowohl in Optik als auch Inhalt (Verwaltbarkeit) eine moeglichst grosse Dynamik aufweist. Was das Design angeht, da ist das Benutzen von CSS ja alleine schon die Loesung.

Was die Inhalte angeht, da habe ich, entsprechend dem, was ich gelernt habe, voll auf MySQL gebaut. Ob die Seitenueberschrift, die Navigationen, diverse Einstellungen, Infotexte, Fehlermeldungen, etc. - alles wird aus SQL-Tabellen ausgelesen.

Als ich letztlich angefangen hab, mir eine Funktion zu schreiben, die im Falle des Falles, dass die Verbindung zum SQL-Server oder der Datenbank fehlschlagen sollte, entsprechende Fehlermeldungen ausgeben soll, welche dynamisch aus einer SQL-Tabelle ausgelesen werden, damit diese ueber das CMS einfach zu editieren sind, musste ich selbst lachen, als ich bemerkte, welche Ironie darin steckt, Fehlermeldungen fuer einen SQL-Verbindungsfehler aus eben diesen SQL-Datenbanken holen zu wollen.

An diesem Punkt habe ich das erste mal darueber nachgedacht, was es fuer Alternativen geben koennte und mich als erstes ueber das Lesen und Schreiben von Textdateien mit PHP informiert und damit rumprobiert. Mein persoenliches Ergebnis: lesen kein Problem, loeschen und neu befuellen auch kein Thema, hinten was dranhaengen auch kein Ding, aber bestehenden Text zu ersetzen schon etwas umstaendlicher.

Fuer meine Fehlermeldungen akzeptabel, aber ansonsten keine wirklich interessante Alternative, wenn man mich fragt.

Nun bin ich im Netz aber immer mal wieder auf Leute gestossen, die die Benutzung von (My)SQL absolut nicht in Betracht ziehen, einige davon haben jedoch ziemlich komplexe Webauftritte realisiert, von denen einige definitiv auch eine gewisse Verwaltungsmoeglichkeit (CMS) haben duerften.

Nun frage ich mich: Was benutzen diese Leute denn dann bitte? Und was haben sie gegen SQL?

Sprich: kann mich mal wer aufklaeren, was es fuer interessante Alternativen gibt, und welche Gruende fuer bzw. gegen die Benutzung von (My)SQL bzw. dessen Alternativen sprechen?

Weiterhin wuerde mich interessieren, bei welcher Art von Informationen/Inhalten ihr die Benutzung einer SQL-Datenbank bevorzugt und bei welchen Inhalten ihr alternative Unterbringungen bevorzugt.

Und: Ich haette gerne mal Erfahrungs- bzw. Richtwerte, die mir einen Ueberblick darueber verschaffen, welche Dimensionen ein entsprechender Webauftritt in Bezug auf Datenbank- und Tabellenverbrauch bei SQL erreichen sollte/duerfte bzw. nicht ueberschreiten sollte.
Zur Info: Meine Seite hat eine Top-Navigation und eine Seiten-Navi, welche Unterpunkte (nur 1 Level) haben kann. Fuer diese Navigationen habe ich insgesamt 2 Tabellen - ist das (zu) viel, (zu) wenig, ...? Ich brauch mal was, um mich da orientieren zu koennen!

Danke im Voraus fuer jegliche Aufklaerung! :}
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 04.04.2008, 00:44
Benutzerbild von Pablo
4 8 15 16 23 42
XHTMLforum-Kenner
 
Registriert seit: 31.05.2004
Beiträge: 1.772
Pablo sorgt für eine eindrucksvolle AtmosphärePablo sorgt für eine eindrucksvolle Atmosphäre
Standard

Gute Alternativen für die Speicherung von vielen Daten mit PHP? Ohne SQL? Gibts so weit keine sinnvollen. Es gibt verschiedene SQL Varianten...
In Text-Dateien kannst du Inhalte besser speichern, als als reinen Text (z.B. xml). Dafür gibt es dann seit PHP 5 auch viele gute PHP Funktionen.
Aber PHP und MySQL gehört einfach zusammen. Die beiden arbeiten so gut zusammen, es gibt unmengen Funktionen für PHP, die die Arbeit extrem einfach machen.
Und performance technisch steht dem ganzen auch nichts im Wege.

Vorteile bei einem Datenbanklosem System gibt es jedoch auch. Die Installation des Systems ist einfacher. Ein einfaches Verschieben von den Dateien und fertig. Das Backup ist einfacher. Einfach die Dateien runterladen, fertig. Bei SQL müssen erst Dumps erstellt werden, die wenn du Pech hast, die Zeichenkodierung verhauen, etc.
Und in seltenen Fällen hat man auch kein MySQL zur Verfügung und muss einfach auf andere Methoden zurückgreifen. Angesichts der Preise für Webhosting mit MySQL jedoch eher selten, wie ich vermute.

Ein solches System ist zum Beispiel FlatPress. Ein Blog-System, an WordPress angelehnt, ohne Datenbank.


Was alles in die Datenbank rein soll?
Alles, was du willst. Der eigentliche Inhalt so wie so. Andere Sprachen können rein (z.B. Drupal), die Templates können rein (z.B. WBB), Dateien können rein (man kann auch binäre Daten in MySQL speichern), der Cache kann anstatt in Dateien auch in die Datenbank...


Wie groß die Datenbank wird?
So groß wie nötig, so klein wie möglich.. Weder übertreiben, und jedes Fitzelchen in eine Tabelle auslagern, noch in die andere Richtung übertreiben und ein CMS mit einer Tabelle erstellen.
Wenn du für die Navigation zwei Tabellen brauchst, gut. Mach's so und fertig. Guck aber, dass du nicht zu viele Datenbank Anfragen machst und diese auch nicht zu kompliziert werden. Als Beispiel Drupal, weil ich bei diesem CMS im Code im Moment gut drin bin. Nur um den eigentlichen Inhalt abzuspeichern, gibt es sechs Tabellen. Allerdings bist du dann auch unglaublich flexibel und kannst wirklich alles machen. Für das "Menü" (kann man so nicht sagen, da auch das Menü so flexibel ist, dass das eigentliche Menü nur ein kleiner Teil des Funktionsumfangs ist) sind es fünf Tabellen. Der Cache nimmt sieben Tabellen, die Suche vier. Du kommst ohne Plugins schon locker auf 50. Nun kannst du dein CMS nicht mit Drupal vergleichen, welches der Inbegriff von Flexibilität ist (ähnlich wie Firefox mit den Extensions im Browserbereich).
Also: Mach es wie du willst, aber übertreib nicht.


Siehe in diesem Rahmen auch die Normalisierung von Datenbanken.

Gruß,
Pablo
__________________
Go Opera!
… oder Chrome. Auch cool.
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 06.04.2008, 18:53
Benutzerbild von kampfgnom
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 22.11.2006
Ort: Radebeul
Beiträge: 1.808
kampfgnom befindet sich auf einem aufstrebenden Ast
Standard

Um mal auf deine Letzte Frage zu antworten:
Du kannst das sicher auch alles in eine Tabelle schmeißen. Nur wirds dann unüberischtlich Mmn.
Das mit den zwei tabellen geht schon inordnung.
Ich empfehle dir das mit der normaliesierung. Ist vlt am anfang ein wenig trocken, aber es lohnt sich.
Was auch sehr nützlich ist, sind grafische DB-Designer (MySQL-Workbench, zb.)
Mit denen kannst du so eine art UML-Diagramme deiner DB erstellen in denen du alle abhängigkeiten (s. Nomaliesierung) darstellen kannst. Sehr nützlich!

Achja, noch ein Tipp beim entwickeln eines CMS's. Fang nicht an einfach drauf los zu programmieren. das geht meistens schief. Am besten ist, wenn man sich vorher alles aufschreibt bzw. malt wie es am ende sein sollte. Aber ich denke das weißt du schon
__________________
Meine Spielwiese: http://blog.kanedo.net
Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt
Für open Source Liebhaber: open Com

Auch ich Zwitschere als @kanedo
Mit Zitat antworten
  #4 (permalink)  
Alt 06.04.2008, 23:02
Benutzerbild von domsson
Rookie @ HTML/CSS/PHP/SQL
neuer user
Thread-Ersteller
 
Registriert seit: 11.02.2008
Ort: Berlin
Beiträge: 88
domsson wird schon bald berühmt werden
Standard

Super, danke fuer die ausfuehrliche Antwort Pablo, aber auch an dich, gnom.

Zitat:
Gute Alternativen für die Speicherung von vielen Daten mit PHP? Ohne SQL? Gibts so weit keine sinnvollen.
Wunderbar. Das erleichtert mir das Thema doch ungemein. :}

Zitat:
In Text-Dateien kannst du Inhalte besser speichern, als als reinen Text (z.B. xml). Dafür gibt es dann seit PHP 5 auch viele gute PHP Funktionen.
Aha! Dass man da XML einsetzen kann wusste ich nicht, ist aber eine echt wertvolle Information. Hab jetzt erstmal nur ganz auf die Schnelle in's PHP-Handbuch geguckt und gesehen, dass man Informationen damit offensichtlich bedeutend bequemer in Dateien verwalten kann. Bei meinen bisherigen Tests hab' ich halt die normalen Lese- u. Schreibefunktionen fuer Dateien benutzt und mit Stringfunktionen dann Inhalte in der Form von "setting=value" auseinandergefriemelt, um sie nutzen zu koennen. Nicht sehr bequem, will ich meinen. Werde mich also mal genauer mit den XML-Funktionen auseinandersetzen, sobald ich Zeit finde. Danke fuer den Hinweis!

Zitat:
Vorteile bei einem Datenbanklosem System gibt es jedoch auch. Die Installation des Systems ist einfacher. Ein einfaches Verschieben von den Dateien und fertig. Das Backup ist einfacher. Einfach die Dateien runterladen, fertig.
Korrekt. Und man ist einfach weniger Abhaengig. Dadurch bin ich auf das Thema naemlich gestossen: ich wollte irgendwo Fehlermeldungen speichern, die man ueber das CMS aendern koennen sollte, die ausgegeben werden, wenn die Verbindung zur MySQL-Datenbank _nicht_ zustande gekommen ist.

Zitat:
Was alles in die Datenbank rein soll?
Alles, was du willst. Der eigentliche Inhalt so wie so.
Hm, der Inhalt ist genau der Teil, den ich nach einiger Ueberlegung doch nicht in die Datenbank eingebracht habe.
Zum einen: ein Feld in einer SQL-Tabelle mit einem solch grossen Inhalt, ist das anzuraten? (Dabei gleich die Frage: das muesste dann von Typ "Text" sein, oder?)
Und vorallem: die Inhalte sind ja selbst teils mit Funktionen gefuellt und nicht nur reines HTML. Das alles dann in die Datenbank zu bringen, erschien mir irgendwie falsch, denn wenn daran was geaendert werden soll, dann soll das sowieso nicht "auf die Schnelle" passieren, also kann man dann ja auch die entsprechende Datei runterladen, aendern und neu hochladen. Und: man koennte doch auch diese Dateien fuer das CMS einfach komplett in ein textarea-Feld eines Formulares einladen und dadurch komfortabel aendern.
Gibt es da trotzdem Gruende, warum der Inhalt besser in die SQL-Tabellen sollte? Denn du schreibst ja, dass gerade der dort reingehoert.

Zitat:
Siehe in diesem Rahmen auch die Normalisierung von Datenbanken.
Wow, das ist ja ein riesen Artikel. Hab das ganze mal Angeschnitten, nicht alles verstanden, aber das Gunrprinzip schon, so denke ich. Und wenn mich nicht alles taeuscht, dann habe ich das - zumindest vom Ansatz her - bislang auch so geloest, intuitiv, ohne dieses Konzept zu kennen. Werde mich auch damit wohl nochmal genauer auseinandersetzen.

Zitat:
Was auch sehr nützlich ist, sind grafische DB-Designer
Werd' ich doch gleich mal Google bemuehen...

Zitat:
Achja, noch ein Tipp beim entwickeln eines CMS's. Fang nicht an einfach drauf los zu programmieren. das geht meistens schief.
Jop. Ist zwar eigentlich nicht meine Art, aber in diesem Falle hab' ich wirklich mal zu Zettel und Stift gegriffen und mir vorher ein Konzept aufgekritzelt - ich gebe zu, das ist wirklich verdammt hilfreich.
__________________
Wenn Du mich fragst, was mir beim Erlenen von Webentwicklung am meisten Probleme bereitet, dann antworte ich: IE.
Mit Zitat antworten
  #5 (permalink)  
Alt 06.04.2008, 23:06
Benutzerbild von kampfgnom
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 22.11.2006
Ort: Radebeul
Beiträge: 1.808
kampfgnom befindet sich auf einem aufstrebenden Ast
Standard

Performance Text vs. DB ist immer so eine sache. Merklcih gibt es mEn keine.
Aber die DB ist eiegntlich besser zu handhaben. Man kann komplexe sachen einfacher auslesen, als aus ner XML datei.
Achso, à propos XML:
SPL sehr nützlich!!
__________________
Meine Spielwiese: http://blog.kanedo.net
Ich bei Flickr? Da: Flickr: Fotostream von kanedo-projekt
Für open Source Liebhaber: open Com

Auch ich Zwitschere als @kanedo
Mit Zitat antworten
Antwort

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fonts - Lizenzen und Nutzung heho Grafik, Design, Typografie 3 01.09.2010 23:21
Ernsthafte Fragen zu MySQL und seiner Indizierung KartoffelKiffer Serveradministration und serverseitige Scripte 2 26.01.2008 01:36
MySQL Query - online ok, lokal kein Ergebnis? Boris Serveradministration und serverseitige Scripte 6 05.09.2007 00:51
mySQL Problem Sp33dy G0nz4l3s Serveradministration und serverseitige Scripte 4 19.08.2007 17:55
MySQL Service deinstallieren NEOX Serveradministration und serverseitige Scripte 1 28.08.2006 20:55


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:02 Uhr.