MoM: Gästebücher: Textdateien oder Datenbank?

Hi!
ich schreibe gerade einen Gästebuch-Service (ja ich weiß gibt auch jetzt schon viele), jetzt meine Frage: was haltet ihr für sinnvoller textdateien oder eine datenbank zu verwenden? da ich anfangs gar nicht eine datenbank gedacht habe, habe ich mi schon eine organistion für die dateien überlegt:
pro user sollte es folgende dateien geben:
eintragsdatei (für die einträge)
einstellungendatei (für die einstellungen)
datendatei (für die anmelde daten)
könnte ich für jede der dateien auch einfach eine tabelle in einer datenbank anlegen?
und was wären die grundsätzlichen vorteile einer datenbank?
mfg
MoM

  1. Hi MoM,

    pro user sollte es folgende dateien geben:
    eintragsdatei (für die einträge)
    einstellungendatei (für die einstellungen)
    datendatei (für die anmelde daten)

    Was willst du denn damit alles (feature-overkill?)

    könnte ich für jede der dateien auch einfach eine tabelle in einer datenbank anlegen?

    Ja logisch.

    und was wären die grundsätzlichen vorteile einer datenbank?

    sie ist im Handling flexibler, und die lästigen Parsingroutinen zu einlesen der Dateien fallen weg. IMHO erzeugt ein Datenbankzugriff weniger Serverlast als das Lesen und schreiben von Dateien.

    Aber, wenn Du nur ein Gästebuch willst, warum nimmst du keines, das HTML-Seiten erzeugt.  Dann hast Du beim Lesen die geringste Serverlast. Es kling doch ein wenig nach Forum, was du machen willst. Dann würde ich eine Datenbank nemen.

    Bye Ed X

    1. Hi Ed x

      Was willst du denn damit alles (feature-overkill?)

      Das nicht gerade, aber ein paar Einstellungsmöglichkeiten will ich dem user schon bieten

      Aber, wenn Du nur ein Gästebuch willst, warum nimmst du keines, das HTML-Seiten erzeugt.  Dann hast Du beim Lesen die geringste Serverlast. Es kling doch ein wenig nach Forum, was du machen willst. Dann würde ich eine Datenbank nemen.

      Aber wenn der User nachträglich eine Einstellung ändert oder auch nur einen Eintrag löscht / kommentiert müssen alle HTML-Dateien neu erstellt werden, deshalb würde ich die dynamische generierung vorziehen

      Tschö
      MoM

      1. Grüsst Euch (c:

        Prinzipiell denke ich, dass es grade für ein Forum mit x verschiedenen Usern, die sich mit Password und Username in einem Forum einloggen sollen, sehr viel einfacher ist Einträge und Userdaten in einer Datenbank zu organisieren.
        Wenns wirklich nur ein Gästebuch ist muss man natürlich überlegen.
        Bei der Lösung mit Datenbank kommt wohl auch noch eine andere Überlegeng hinzu. Mir ist zu Ohren gekommen, dass z.B. Puretec an Scripts arbeitet, die überprüfen sollen, ob bestimmte Seiten bei jedem Aufruf Anfragen an den Datenbankserver schicken. Sinn und Zeck der Übung soll wohl sein, dass diese Seiten geändert werden müssen, was bedeuten würde, dass man zwar z.B. ein datenbankgestütztes Forum schreiben kann, Zugriffe auf die Datenbank aber nicht bei jedem Seitenaufruf erlaubt sind. Man müsste also HTML Dateien erzeugen, die immer udgedated werden, wenn ein neuer Eintrag hinzukommt.
        Jetzt muss man sich aber mal vorstellen, was DAS für ein RIESEN Aufwand ist. Es würde ja z.B. nicht reichen pro topic eine HTMLdatei vorsorglich auf dem server zu speichern, denn jedes Forum, was wenigstens ein bisserl was können soll, zeigt ja nur z.B. 20 Einträge pro Seite an. Das sind dann also bei gutbesuchten Seiten schoma ein paar HTML seiten pro topic.
        Probs würde es sicherlich auch geben, wenn man z.B. den service bieten möchte, dass Topics, die ein User noch nicht durchgeschaut hat, mit einem "NEW" gekennzeichnet sind.
        Da kann man dann wirklich überlegen, ob mans nicht mit textdateien macht oder sonst ein eigenes dateiformat schreibt, womit die ganze Datenbankgeschichte gestorben wäre. Da das natürlich Quatsch ist und Puretec seinen Kunden kaum zumuten wollen wird ohne Datenbank auszukommen, bin ich zum Schluss gekommen, dass das nen Gerücht ist mit diesen Überprüfungsscripts.

        Weiss da jemand was drüber ?
        Hat jemand mal ne Zwischenlösung geschrieben ? Also mit Datenbankabindung, die aber nicht bei jedem Zugriff genutzt wird ?
        Wie würde man es machen, wenn man bestimmte Inhalte vor bestimmten Usern schützen möchte. Die entsprechenden HTML-Dateien in eindeutige Unterordner schreiben und die dann per .htaccess Schützen ?

        Gruss,
        Axxis

  2. Hi,

    ich schreibe gerade einen Gästebuch-Service (ja ich weiß gibt auch jetzt schon viele), jetzt meine Frage: was haltet ihr für sinnvoller textdateien oder eine datenbank zu verwenden? da ich anfangs gar nicht eine datenbank gedacht habe, habe ich mi schon eine organistion für die dateien überlegt:
    pro user sollte es folgende dateien geben:
    eintragsdatei (für die einträge)
    einstellungendatei (für die einstellungen)
    datendatei (für die anmelde daten)
    könnte ich für jede der dateien auch einfach eine tabelle in einer datenbank anlegen?
    und was wären die grundsätzlichen vorteile einer datenbank?

    Die Antwort ist anwaltlich: 'Es kommt darauf an'.

    Textdateien bieten den Vorzug, das du da selbst schnell mit einem Editor reingehen koenntest
    um was wegzumachen.
    Auch das Debugging ist meist nervenschonender.

    Aber letztlich: Wenn du ein Service fuer Gaestebucher anbieten willst, wie
    willst du die daten speichern?
      a) Alle Daten in einer Datenbasis?
      b) Daten jedes Gaestebuches in einer eigenen Datenbasis?

    Wenn du letzteres willst, dann lohnen sich eigentlich Text- oder
    Binaerdateien zum Speichern der Daten. falls du Perl benutzt, dann schau dir
    mal die DBM-Routinen (und MLDBM) an. Damit entfaellt dann auch jegliches parsing, weil
    du damit deinen Daten direkt aus dem Hash in die Datei schreiben kannst
    und zurueck.

    Wenn alle Datensaetze jedoch in nur einer Dateibasis gespeichert werden sollen,
    dann solltest du IMHO eine Datenbank benutzen.

    Ciao,
      Wolfgang

    P.S.: Falls du ein vergleich willst, dann schau doch mal meine
    Gaestebuchskripten an; Bei denen speichere ich die Daten fuer jedes
    Gaestebuch gesondert ab.

    1. Hi

      Textdateien bieten den Vorzug, das du da selbst schnell mit einem Editor reingehen koenntest
      um was wegzumachen.
      Auch das Debugging ist meist nervenschonender.

      Aber letztlich: Wenn du ein Service fuer Gaestebucher anbieten willst, wie
      willst du die daten speichern?
        a) Alle Daten in einer Datenbasis?
        b) Daten jedes Gaestebuches in einer eigenen Datenbasis?

      Ich hatte eigentlich vor die Daten jedes Gästebuchs in eine eigene Datenbasis zu speichern.

      Wenn du letzteres willst, dann lohnen sich eigentlich Text- oder
      Binaerdateien zum Speichern der Daten. falls du Perl benutzt, dann schau dir
      mal die DBM-Routinen (und MLDBM) an. Damit entfaellt dann auch jegliches parsing, weil
      du damit deinen Daten direkt aus dem Hash in die Datei schreiben kannst
      und zurueck.

      Aber ist es nicht so, dass wenn ein Gästebuch mehrere tausend Einträge hat (kommt schon mal vor), eine Textdatei ziemlich unpraktisch wäre, schließlich müssen dann ja alle Einträge eingelesen werden?

      Wenn alle Datensaetze jedoch in nur einer Dateibasis gespeichert werden sollen,
      dann solltest du IMHO eine Datenbank benutzen.

      Wie soll denn das gehen mit nur einer Datenbasis?? Dann muss doch irgendwo festgelegt werden welche Einträge zu welchem GB gehören, oder?

      Mfg
      MoM

      P.S.: Falls du ein vergleich willst, dann schau doch mal meine
      Gaestebuchskripten an; Bei denen speichere ich die Daten fuer jedes
      Gaestebuch gesondert ab.

      Werde ich mir mal anschauen...

      1. Hi,

        Aber ist es nicht so, dass wenn ein Gästebuch mehrere tausend Einträge hat (kommt schon mal vor), eine Textdatei ziemlich unpraktisch wäre, schließlich müssen dann ja alle Einträge eingelesen werden?

        och, das Einlesen einer Datei in Perl 'flutscht' ganz gut.
        Es kommt wirklich eher drauf an, wie komplex  du  es dann abspeicherst.
        XML parsen kann etwas laenger dauern, als wenn du Berkley DBM-Files
        verwendest.
        Aber da musst du halt testen.
        Denke halt auch daran, dass nur sehr wenige Gaestebuecher
        viele EIntraege bekommen.

        Wenn alle Datensaetze jedoch in nur einer Dateibasis gespeichert werden sollen,
        dann solltest du IMHO eine Datenbank benutzen.
        Wie soll denn das gehen mit nur einer Datenbasis?? Dann muss doch irgendwo festgelegt werden welche Einträge zu welchem GB gehören, oder?

        Genau.
        Musst halt tables definieren.

        Ciao,
         Wolfgang