Bastian Schnitzler: XML-Dateien als Datenbank nutzen

Hallo!
Da vor einiger Zeit bei einem Hackerangriff meine kompletten Datenbanken verloren gegangen sind und ich meine Homepage sowieso neu aufsetzen wollte, hatte ich daran gedacht, demnächst ,statt mit MySQL-Datenbanken zu arbeiten, auf XML-Dateien zu setzen, die einfach ausgelesen werden. Allerdings frage ich mich, ob dies mit PHP(Dieses Forum arbeitet ja angeblich auch mit XML-Datenbanken) ein guter Ansatz ist und ob es dafür schon vorgefertigte Routinen gibt, ich habe nur http://exists.sourceforge.net gefunden. Weiterhin habe ich von einer sogenannten XMl-Query-Language gehört. Gibt es da vielleicht einen Artikel, der einen Überblick über das Thema gibt? Ist das ganze schneller als eine Datenbank mit Daemon?
Grüße,
Bastian

  1. Da vor einiger Zeit bei einem Hackerangriff meine kompletten Datenbanken verloren gegangen sind

    Hüstel.

    und ich meine Homepage sowieso neu aufsetzen wollte, hatte ich daran gedacht, demnächst ,statt mit MySQL-Datenbanken zu arbeiten, auf XML-Dateien zu setzen, die einfach ausgelesen werden.

    Nun ja, einfach solls sein? Was sind das denn so für Daten?

    Allerdings frage ich mich, ob dies mit PHP(Dieses Forum arbeitet ja angeblich auch mit XML-Datenbanken) ein guter Ansatz ist und ob es dafür schon vorgefertigte Routinen gibt, ich habe nur http://exists.sourceforge.net gefunden.

    Vorschlag: Lass die Finger davon.

    Weiterhin habe ich von einer sogenannten XMl-Query-Language gehört. Gibt es da vielleicht einen Artikel, der einen Überblick über das Thema gibt?

    Schau mal hier: http://de.selfhtml.org/xml/darstellung/xpathsyntax.htm

    Ist das ganze schneller als eine Datenbank mit Daemon?

    Kommt drauf an, wie teuflisch der ist.   ;)

  2. Hallo Bastian,

    ich arbeite jetzt schon seit Jahren mit XML, ist für mich die einzige Variante, die mir kostenlose Server garantiert.
    Mit PHP5 und simple xml soll es reicht einfach sein; habe ich allerdings noch nicht getestet.
    Wenn du den "einfachsten" Weg über XSL gehst wirst du Probleme haben deine Ausgabe mittles Parametern zu filtern, weil XSL weder Parameter noch Variablen aus Link oder Forms verwerten kann.
    Hierfür gehe ich den Weg über minixml. Ist sehr simple: die XML-DAtei wird komplett in ein Array geparst, ab hier mußt du nur noch PHP können. Dein könnte "komplett" werden. Je nach Größe deiner deiner XML Datenbank geht dir schnell, der zur Verfügung gestellte Arbeitspeicher aus; siehe auch.
    Ergo, bleibt unter PHP 4.x nur noch DOM und das ist mMn wirklich kompliziert.

    Zudem ist XML eine Textdatei, die direkt runtergeladen werden kann. Das heißt du mußt für sensible Daten zusätzliche Sicherheitsmaßnahmen ergreifen, die bei einer Datenbank so nicht notwendig sind.

    bydey

    --
    -- bydey ist die Signatur und Verabschiedung, nicht der Nick --
    -- Navigate all your PHP web projects with  PHP Project Browser--
  3. Hallo,

    Da vor einiger Zeit bei einem Hackerangriff meine kompletten Datenbanken verloren gegangen sind und ich meine Homepage sowieso neu aufsetzen wollte, hatte ich daran gedacht, demnächst ,statt mit MySQL-Datenbanken zu arbeiten, auf XML-Dateien zu setzen, die einfach ausgelesen werden. Allerdings frage ich mich, ob dies mit PHP(Dieses Forum arbeitet ja angeblich auch mit XML-Datenbanken)

    Nein, dieses Forum arbeitet mit XML-Dateien und nicht mit XML-Datenbanken.

    ein guter Ansatz ist und ob es dafür schon vorgefertigte Routinen gibt, ich habe nur http://exists.sourceforge.net gefunden.

    Es gibt vieles, meinst im kommerziellen Bereich. Aber auch Opensource http://xml.apache.org/xindice/ oder http://axkit.org/. Aber od du davon was bei dir nützen kannst?

    Weiterhin habe ich von einer sogenannten XMl-Query-Language gehört. Gibt es da vielleicht einen Artikel, der einen Überblick über das Thema gibt?

    http://www.google.de/search?hl=de&q=Xquery+tutorial&btnG=Google-Suche&meta=
    Aber XQery ist schon eher für professionelle Anwendungen.

    Ist das ganze schneller als eine Datenbank mit Daemon?

    Jein. Ich zitiere mal "The best way to explain XQuery is to say that XQuery is to XML what SQL is to database tables".

    Grüße
    Thomas

    1. Da vor einiger Zeit bei einem Hackerangriff meine kompletten Datenbanken verloren gegangen sind und ich meine Homepage sowieso neu aufsetzen wollte, hatte ich daran gedacht, demnächst ,statt mit MySQL-Datenbanken zu arbeiten, auf XML-Dateien zu setzen, die einfach ausgelesen werden. Allerdings frage ich mich, ob dies mit PHP(Dieses Forum arbeitet ja angeblich auch mit XML-Datenbanken)

      Nein, dieses Forum arbeitet mit XML-Dateien und nicht mit XML-Datenbanken.

      Nur ein Detail: Datenbanken = Datenbasen, also arbeitet auch das hiesige System mit XML-Datenbanken, allerdings nicht mit "aktiven" Datenbanksystemen.

      1. Hallo,

        Nur ein Detail: Datenbanken = Datenbasen, also arbeitet auch das hiesige System mit XML-Datenbanken, allerdings nicht mit "aktiven" Datenbanksystemen.

        Auch nicht mit inaktiven XML-Datenbanken.
        Erzähl _mir_ bitte nicht wie das Forum hier funktioniert.

        Thomas

        1. Nur ein Detail: Datenbanken = Datenbasen, also arbeitet auch das hiesige System mit XML-Datenbanken, allerdings nicht mit "aktiven" Datenbanksystemen.

          Auch nicht mit inaktiven XML-Datenbanken.
          Erzähl _mir_ bitte nicht wie das Forum hier funktioniert.

          Wichtig eben nur, dass auch hier mit XML-_Datenbanken_ gearbeitet wird.

          1. Hallo,

            Nur ein Detail: Datenbanken = Datenbasen, also arbeitet auch das hiesige System mit XML-Datenbanken, allerdings nicht mit "aktiven" Datenbanksystemen.

            Auch nicht mit inaktiven XML-Datenbanken.
            Erzähl _mir_ bitte nicht wie das Forum hier funktioniert.

            Wichtig eben nur, dass auch hier mit XML-_Datenbanken_ gearbeitet wird.

            Wichtig ist, dass der ursprüngliche Fragesteller weiss, dass Blödsinn auch nicht dann wahr wird, wenn du es noch 5-mal betonst.

            Thomas

            1. Nur ein Detail: Datenbanken = Datenbasen, also arbeitet auch das hiesige System mit XML-Datenbanken, allerdings nicht mit "aktiven" Datenbanksystemen.

              Auch nicht mit inaktiven XML-Datenbanken.
              Erzähl _mir_ bitte nicht wie das Forum hier funktioniert.

              Wichtig eben nur, dass auch hier mit XML-_Datenbanken_ gearbeitet wird.

              Wichtig ist, dass der ursprüngliche Fragesteller weiss, dass Blödsinn auch nicht dann wahr wird, wenn du es noch 5-mal betonst.

              Wichtig ist, dass der Fragesteller - und auch Du - lernt zwischen Datenbank (aka Datenbasis = DataBase) und Datenbankmanagementsystem (DBS bzw. DBMS bzw. bei relationaler Datenhaltung RDBMS) zu unterscheiden.

              Ich weiss nicht genau was Du damit bezwckst meine Anmerkungen in diesem Beitragsstrang als falsch und blöd zu bezeichnen, aber es ist nicht gut.