News aus Datenbank oder XML auslesen?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • News aus Datenbank oder XML auslesen?

    Moin Leute!

    Hier zwei Wege, wie ich ein Newsscript schreiben würde. Bitte Ratschläge! :/

    Weg #1:
    Datensätze jedes mal aus der DB holen.
    Nachteil: Immer wieder DB Abfragen
    Vorteil: Dank "LIMIT" kann man die Anzahl der Datensätze festlegen

    Weg #2:
    Datensätze in der DB archivieren, beim Klick auf "Veröffentlichen" wird eine *.xml generiert, welche anschließend von den Templates ausgelesen wird.
    Vorteil: *.xml kann extern verwendet werden.
    Nachteil: Was ist, wenn 1000 Datensätze in der XML vorhanden sind? Wie performant ist es dann? Man könnte natürlich auch auf die letzten 30 beschränken, aber dann wärs das mit der Blätterfunktion.

    Ich würde gerne einen "Veröffentlichen" Button einbauen, aber kann mich noch nicht so recht entscheiden welchen Weg ich nehme.

    Was haltet ihr für den besseren Weg? Vielleicht noch eine Alternative?

    Ich bin eigentlich für Weg #2, aber weiß nicht wie ich das performant hinbekomme. :/ Die Schleife, welche die XML ausliest, kann natürlich nach $x Datensätzen abbrechen, aber woher weiß ich auf Seite 2, wo ich anfangen soll auszulesen? Gibts XML Funktionen?
    Lasst euch nicht lumpen, hoch den Humpen!

  • #2
    #1
    - Du kannst schneller Aktionen in der DB ausführen, als in der XML
    - Relationen zu anderen Tabellen
    - Du musst nicht dein eigenes DBMS aufbauen

    Wenn du dir den Weg zur DB sparen willst, überleg dir irgendein Caching. Das macht bei einfachen Selects aber nicht viel Sinn!

    Kommentar


    • #3
      hmmm...

      wann mysql, wann xml?
      Lasst euch nicht lumpen, hoch den Humpen!

      Kommentar


      • #4
        MySQL für deine Daten, XML für sonstwas. Vielleicht Konfigurations- oder Installationsdateien, aber keine Daten!

        Kommentar


        • #5
          XML einfach niemals... der XML-Hype geht mir persönlich langsam auf den Keks...
          Einfach standardmäßig von DB ausgehen und wenn das auf einmal neue Nachteile bringt, dann NEU überlegen, ob XML Sinn macht.
          Zuletzt geändert von ghostgambler; 25.01.2008, 16:38.

          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
          Wie man Fragen richtig stellt

          Kommentar


          • #6
            Vielleicht ist ja auch eXist was für dich.
            Und nein, Operationen auf eine XML Datenbank sind nicht pauschal langsamer als eine relationale Datenbank. Es hat schon seine Gründe, warum IBM seiner DB2 ein XML Interface verpasst hat.

            Kommentar


            • #7
              Wie wär's denn wenn du bei jeder neuen Newsmeldung eine Job anstossen würdest, der die XML Datei für die Clients erstellt? Dann musst du nicht immer die DB abfragen, sondern die DB kommt nur zum Zuge wenn sich auch wirklich etwas geändert hat...

              Gruss

              tobi
              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

              Kommentar


              • #8
                Und nein, Operationen auf eine XML Datenbank sind nicht pauschal langsamer als eine relationale Datenbank. Es hat schon seine Gründe, warum IBM seiner DB2 ein XML Interface verpasst hat.
                Aber ein DBMS mit XML-Schnittstelle und ein PHP-Skript, das auf XML-Dateien zugreift, ist schon etwas anderes
                Bezogen auf PHP-MySQL und PHP-XML ist die Datenbank fixer!

                Kommentar


                • #9
                  Original geschrieben von PHP-Desaster
                  Aber ein DBMS mit XML-Schnittstelle und ein PHP-Skript, das auf XML-Dateien zugreift, ist schon etwas anderes
                  Bezogen auf PHP-MySQL und PHP-XML ist die Datenbank fixer!
                  Exist ist aber kein DBMS mit XML-Schnittstelle, sondern ein vollständiges DBMS auf XML Basis, sprich die Daten liegen auch wirklich in XML vor.

                  Kommentar


                  • #10
                    Original geschrieben von bla$ter
                    Und nein, Operationen auf eine XML Datenbank sind nicht pauschal langsamer als eine relationale Datenbank. Es hat schon seine Gründe, warum IBM seiner DB2 ein XML Interface verpasst hat.
                    Ein XML-Interface hat nur rein gar nichts mit einer XML Datenbank zutun, wie du selbst schon gesagt hast.

                    Und, tut mir Leid, aber ohne Benchmarks kann ich auch einfach behaupten, dass normale DBMS deutlich schneller sind als jegliche XML-DB.

                    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                    Wie man Fragen richtig stellt

                    Kommentar


                    • #11
                      Original geschrieben von ghostgambler
                      Ein XML-Interface hat nur rein gar nichts mit einer XML Datenbank zutun, wie du selbst schon gesagt hast.
                      Dabei gings mir auch vor allem um die aussage von PHP-Desaster (" - Du kannst schneller Aktionen in der DB ausführen, als in der XML"), denn XQuery ist ähnlich mächtig wie SQL.

                      Und, tut mir Leid, aber ohne Benchmarks kann ich auch einfach behaupten, dass normale DBMS deutlich schneller sind als jegliche XML-DB.
                      Könntest du, das hätte aber nicht mit meiner Aussage zu tun. Ich habe nämlich nirgends erwähnt, das XML Datenbanken schneller sind, als relationale Datenbanken (obwohl sie das logischer weise in manchen bereichen sind, denken wir zum Beispiel mal an Bäume, in anderen sind sie dafür langsamer), ich wollte mit der aussage lediglich solchen aussagen wie "MySQL für deine Daten, XML für sonstwas. Vielleicht Konfigurations- oder Installationsdateien, aber keine Daten!" widersprechen.

                      Und wenn man jetzt zu jeder Aussage hier im Forum eine Quelle angeben müsste könntest du 90% (Achtung, fiktiver Wert) aller Posts als ungültig markieren und löschen. Hier geht es unter anderem auch um den Austausch von Erfahrungen und wie du die benchmarken willst kannst du mir ja gern mal demonstrieren

                      Kommentar


                      • #12
                        imho lässt sich pauschal sagen, dass das dbms zig mal schneller ist als das xml file solang indizies genutzt werden können (was hier bestimmt der fall ist) - da hier wirklich nur die datensätze angeschaut werden, die wirklich gesucht werden.

                        ein einfacher filecache würde das ganze noch performanter machen.
                        MfG
                        aim
                        Lies mich jetzt!
                        - OT-Tags-Liebhaber und BB-Code-Einrücker -

                        Kommentar


                        • #13
                          Original geschrieben von aimbot
                          imho lässt sich pauschal sagen, dass das dbms zig mal schneller ist als das xml file solang indizies genutzt werden können (was hier bestimmt der fall ist) - da hier wirklich nur die datensätze angeschaut werden, die wirklich gesucht werden.

                          ein einfacher filecache würde das ganze noch performanter machen.
                          Das ist aber bei einer XML DB auch der Fall.

                          Kommentar

                          Lädt...
                          X