DB-Abstraktions-/Wrapperempfehlung aus der Praxis?

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

  • DB-Abstraktions-/Wrapperempfehlung aus der Praxis?

    Ich möchte Sepia vor dem ersten Start unbedingt noch eine zeitgemäße DB-Engine verpassen. Im Moment arbeitet darin noch eine vor jahren selbstgeschriebene mySQL-Wrapper-Klasse.

    ADODb sieht mir bislang am interessantesten aus - es ist auf Geschwindigkeit ausgelegt, und die Liste der unterstützten Datenbanken ist natürlich gigantisch.

    Hat jemand Praxiserfahrungen mit ADODb und kann es empfehlen oder rät davon ab? Besonders interessieren mich Erfahrungen unter großer Belastung, weniger was die Datenmengen, als eher die Anzahl und Frequenz der Anfragen angeht.

    Oder kennt jemand noch einen Wrapper, der folgenden Bedingungen entspricht?

    - Absolutes Hauptkriterium: Geschwindigkeit. Sepia hat eine recht hohe Query-Frequenz pro Aktion. Deshalb darf nicht zuviel zeitraubende Abstraktion stattfinden.
    - Sollte mindestens mySQL und SQL Server können
    - Weitere Datenbanken ein Plus
    - Unabhängig von PEAR und einkompilierten Erweiterungen. Ich möchte das ganze auf so vielen Plattformen lauffähig haben wie möglich
    - Hoher Verbreitungsgrad
    Zuletzt geändert von pekka; 01.09.2008, 16:57.

  • #2
    Setzt du voll auf PHP5? Oder soll es auch auf 4 laufen?

    Ansonsten würde mir das noch Zend_Db einfallen, obwohl ich da keine Aussagen über die Geschwindigkeit machen kann. Ich mag auf jeden Fall den Profiler den das Teil mitbringt

    http://framework.zend.com/manual/en/zend.db.html

    Kommentar


    • #3
      PDO. Nativ, einfache Schnittstelle, PHP-Standard, Treiber für die gängigen Datenbanken vorhanden.

      Kommentar


      • #4
        Zend und vor allem PDO sehen mir sehr interessant aus - PDO vor allem natürlich wegen seiner Nativität und der damit verbundenen Performance. ADODB macht mir trotzdem den sympathischten Eindruck, und es kann Abfragen cachen, wovon ich mir in einzelnen Teilen von Sepia besonders große Performance-Zugewinne verspreche. Und ADOdb ist konzeptionell in der Lage, PDO als Treiber aufzunehmen. Deswegen werde ich jetzt mal darauf setzen und, wenns jemanden Interessiert, meine Erfahrungen dann im Forum posten.

        Kommentar


        • #5
          Darf ich jetzt mal ketzerisch fragen was Caching mit ner DB Abstraktion zu tun hat? Das sind 2 paar Schuhe, die vielleicht sehr gut zusammen passen, aber meiner Meinung nach nicht in einen Topf geschmissen werden sollte. Da fehlt mir die Kapselung.

          Kommentar


          • #6
            Original geschrieben von Schnoop
            Darf ich jetzt mal ketzerisch fragen was Caching mit ner DB Abstraktion zu tun hat? Das sind 2 paar Schuhe, die vielleicht sehr gut zusammen passen, aber meiner Meinung nach nicht in einen Topf geschmissen werden sollte. Da fehlt mir die Kapselung.
            Mmm mir passen die so gut zusammen, daß ich sie gern in einem Topf habe. Es geht ja wirklich um das Cachen von Result-sets von komplizierten Abfragen. Z.b. beim Rechtesystem fallen in der strengsten Einstellung bei jedem Zugriff auf ein Element mehrere Queries an, deren Ergebnisse zu cachen (und nur bei einer Änderung im Rechte-Dialog aufzufrischen) natürlich superbequem ist. Wenn beides taugt, verzichte ich gern auf die Kapselung.

            Kommentar


            • #7
              Ich kenne ADODb nicht, aber vielleicht ist auch Doctrine etwas für dich. Setzt auf PDO und bietet sehr nettes Caching und SQL-Syntax-Abstraktion an. Erscheint mir auf dem ersten Blick nicht so schwergewichtig wie ADODb. Vielleicht willst du dir das ja auch noch einmal ansehen.

              Kommentar


              • #8
                Von Doctrine ist mir wegen des hohen Abstraktionsgrads und dem damit verbundenen Performanceverlust abgeraten worden. Ich muß aber mal schauen, wie sich das im Vergleich mit ADODb macht - "Designed for speed" kann ja viel heißen

                Kommentar

                Lädt...
                X