kerki: Heise installiert Forum auf MySQl-Basis

Beitrag lesen

Hallo Daniela!

Mir geht es aber mehr um XML vs. DBMS (z.B. MySQL).

Das Hauptproblem bei relationalen Datenbanken ist, eine hierarchische Struktur
wie sie Threads haben zu speichern.

Stimmt!

Im Normalfall werden einfach alle Links gespeichert,
also Parent x, hat Kinder y,z ... Es ist kein Problem, jeweils alle
Kinderposting eines Parents rauszuholen, [...]
hingegen ist es mit Standard SQL
kaum möglich, bereits einen perfekt sortierten Baum aus der Datenbank zu kriegen
der bereits alle Angaben zur Einrückung enthält.

Unbestritten!

(Soviel ich weis, gibt es mit PL/SQL also Oracle, und uu auch PostgreSQL aber die Möglichkeit das zu lösen).

Kann sein, keine Ahnung!

Also muss pro Thread sozusagen für jedes Posting einzeln alle Kinder geholt
werden, und das ist sehr aufwändig weil jedesmal eine neue Anfrage an das
DBMS gestellt werden muss.

Angenommen, ich speichere zu jedem Beitrag die ID dessen Vaters und die ID des Ursprungspostings (Thread-ID), erhalte ich über eine DBMS-Abfrage alle Beiträge eines Threads und kann dann recht simpel in der mir zur Verfügung stehenden Programmiersprache anhand der Vater-IDs die Baumstrucktur nachbilden.

In etwa so, wie es Henryk in seinem Feature-Artikel beschrieben hat: http://aktuell.de.selfhtml.org/artikel/phpasp/php-forum/index.htm.

Es gibt hier zwar Möglichkeiten mit PostingIDs wie ThreadID.Posting.Posting.Posting...
zu arbeiten um die Hierarchie zu speichern, dafür muss die ID dann aber als
String gespeichert werden und von einem Script gemäss Punkten in dem String
richtig geparst werden, die Reihenfolgte stimmt jedoch schon direkt aus der
Datenbank

Im Zweifel führt diese Variante nur zu einer Einschränkung der möglichen Threadtiefe, da der benötigte String nicht endlos lang werden kann.

und ein aufwändiger Sortiervorgang ist nicht nötig.

Wo der von Henryk beschriebene Sortiervorgang 'aufwändig' ist, sehe ich nicht so ganz. Bei durchschnittlich (pi * Daumen) 20 Postings pro Thread dürften weder Perl noch PHP ins Schwitzen kommen.

Wie ist denn bisher die Datenhaltung per XML strukturiert? Habe ich aus dem bisher gesagten richtig herausgelesen, dass pro Thread ein XML-File angelegt wird?

Das würde zumindest erklären, warum man nur über Umwege auf einzelne Postings zugreifen kann. Die Message-Id ist ohne Thread-Id IMHO ja quasi wertlos.

Soweit richtig?

Gruß,

kerki

0 80

Heise installiert Forum auf MySQl-Basis

andreas
  • zur info
  1. 0
    Achim Schrepfer
    1. 0
      andreas
      1. 0
        Achim Schrepfer
        1. 0
          andreas
          1. 0
            Stefan Muenz
            1. 0
              Christian Kruse
  2. 0
    Schuer
    1. 0
      andreas
  3. 0
    Thomas Meinike
    1. 0
      Achim Schrepfer
  4. 0
    Wilhelm
  5. 0

    Heise auf dem Weg zur Computer-Bild...

    Bio
    1. 0
      Thomas Meinike
  6. 0
    Christian Kruse
    1. 0
      kerki
  7. 0
    kerki
    1. 0
      Daniela Koller
      1. 0
        Stefan Muenz
        1. 0
          Bio
          1. 0
            Martin Jung
            1. 0
              Bio
        2. 0
          Daniela Koller
          1. 0
            Martin Jung
            1. 0
              Daniela Koller
              1. 0
                Martin Jung
                1. 0
                  Daniela Koller
                  1. 0
                    Martin Jung
                    1. 0
                      Daniela Koller
                      1. 0
                        Christian Kruse
                    2. 0
                      Stefan Muenz
                      1. 0
                        Christian Kruse
              2. 0
                Ed X
                1. 0
                  Daniela Koller
                  1. 0
                    Ed X
                    1. 0
                      Daniela Koller
                      1. 0
                        Ed X
                    2. 0
                      Christian Kruse
                      1. 0
                        Ed X
                        1. 0
                          Frank Schönmann
                        2. 0
                          Martin Jung
                          1. 0
                            Frank Schönmann
                          2. 0
                            Ed X
                  2. 0
                    Henryk Plötz
                  3. 0
                    Michael Schröpl
                    1. 0
                      Daniela Koller
                      1. 0
                        Michael Schröpl
          2. 0
            Stefan Muenz
            1. 0
              Daniela Koller
              1. 0
                kerki
                1. 0
                  Martin Jung
                  1. 0
                    kerki
                2. 0
                  code2i
                  1. 0
                    Michael Schröpl
                3. 0
                  Christian Kruse
                  1. 0
                    kerki
                    1. 0
                      Martin Jung
                      1. 0
                        Christian Kruse
                        1. 0
                          Martin Jung
            2. 0
              Michael Schröpl
        3. 0
          kerki
      2. 0
        kerki
        1. 0
          Daniela Koller
          1. 0
            kerki
            1. 0
              Christian Kruse
      3. 0
        Michael Schröpl
        1. 0
          Martin Jung
          1. 0
            Michael Schröpl
    2. 0
      Martin Jung
    3. 0
      Thomas J.S.
      1. 0
        kerki
        1. 0
          Michael Schröpl
        2. 0
          Thomas J.S.
          1. 0

            Das unbekannte Wesen

            kerki
            • xml
            1. 0
              Thomas J.S.
              1. 0
                kerki
                1. 0
                  Thomas J.S.
                  1. 0
                    Thomas J.S.
                    1. 0
                      Michael Schröpl
                  2. 0
                    Michael Schröpl