Announcement

Collapse
No announcement yet.

Wiedereinstieg in Datenbankentwicklung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Wiedereinstieg in Datenbankentwicklung

    Guten Abend zusammen,

    nach einigen Jahren als Softwarentwickler hat es mich beruflich in die Verwaltung verschlagen. Zuletzt habe ich mir 2001 das Buch "Interbase Datenbankentwicklung mit Delphi" zugelegt, und wollte eigentlich Paradox ablösen. Leider hatte ich danach keine Möglichkeit mehr, mich mit der Softwareentwicklung zu beschäftigen. Nun möchte ich wieder einsteigen und habe mir die Trial-Version von Delphi 7 runtergeladen. Was mich gewundert hat ist die Tatsache, dass Paradox dort immer noch enthalten ist.

    Nun meine eigentliche Frage : Existiert das Opensource-Projekt Interbase noch, taugt es zur weiteren Entwicklung oder sind inzwischen andere (möglichst kostenfreie) Datenbanken für neue Projekte zu empfehlen ? Wie sieht es mit der weiteren Verwendung von Paradox aus ? Was spricht dagegen ?
    Erstes Entwicklungsziel ist eine kleine Kunden-und Artikelverwaltung mit der Möglichkeit Rechnungen zu schreiben und zu archivieren. Mit der Zeit soll die Software jedoch wachsen und auch höheren Ansprüchen im kaufmännischen Bereich genügen...

    mfG Ewald Stahl

  • #2
    Hallo Ewald,<BR><BR>
    kurze Antworten:<BR><BR>
    Nimm statt Interbase Firebird (www.ibphoenix.com). Firebird ist Open Source und eine sehr stabile und performante DB.<BR>
    Gegen Desktop Datenbanken (also nicht nur Paradox) spricht:<BR>
    fehlende Performance<BR>
    fehlende Datensicherheit<BR>
    veraltetes Konzept<BR>
    und vieles mehr...<BR><BR>
    Fran

    Comment


    • #3
      Hallo Frank,

      das mit den Desktop-Datenbanken kann ich so nicht stehen lassen.

      Es gibt einige Desktopdatenbanken (ADS local Server, TurboDB), welche obige Anforderungen problemlos erfüllen können. ADS bietet sogar einen sehr einfachen umstieg auf eine Serverbasierte Lösung (ADS Server) mit nur wenigen Änderungen.

      Fehlende Performance: Stimmt nicht. ADS ist (bei eigenen Anwendungen) um einiges Schneller als Oracle, MS-SQL oder MySQL

      Fehlende Datensicherheit: Wenn Du Transaktionen ansprichst mag das Stimmen. Alles Andere (Backup, ...) ist Benutzerabhängig. Es muß halt gemacht werden

      veraltetes Konzept: In Bezug auf was? Desktopdatenbanken unterstützen einen Großteil des SQL-Standards

      Vorteile:<br>
      Einfache Verteilung. Es genügt maximal ein paar DLL's im Anwendungsverzeichnis zu kopieren. Keine Installation, Keine DLL-Hölle, Keine Admin-Rechte nötig. Teilweise komplett in die Exe kompilierbar<br>
      Läuft i.d.R. von Win95-2003<br>
      Kleiner Platzbedarf. Mit 1-2 MB Mehrkosten im Anwendungverzeichnis Datenbankzugriff.

      Selbst haben wir ADS Local Server schon mit 1 GB und mehr erfolgreich im Einsatz.

      Falls die Anwendung wachsen soll, wäre es evtl. angesagt die Datenbankschnittstelle mittels Bridge-Pattern zu kapseln. Damit könntest Du jetzt z.B. mittels ADS beginnen und später relativ einfach auf Oracle oder MS-SQL aufsteigen, da die ergänzungen relativ zentral erfolgen könnten. Du müsstest jedoch schon einige Ahnung von SQL und der Kapslung haben

      Comment


      • #4
        Hallo Bernhard,<BR><BR>
        das Problem bei Desktopdatenbanken ist doch, daß beim Absturz eines Client PC's defekte Tabellen bzw. Indexe nicht gerade selten sind. So findet man in den typischen Anwendungen auch immer solche Menüpunkte wie -> Reorganistation oder Indexe neu aufbauen.<BR>
        Und was die Performance betrifft, so kann diese logischerweise nur erreicht werden, wenn ein Programm auf dem Rechner, wo die Daten liegen, für den Transport der Daten zuständig ist. Und das funktioniert zumindest im Netzwerk nur mit einem SQL - Server.<BR>
        So ist auch ADS erst ab der Server - Version aus meiner Sicht eine Empfehlung.<BR>
        <Keine DLL - Hölle> bei Interbase und Firebird wird nur eine DLL benötigt (< 500 kb).<BR>
        Ich würde heute niemandem raten, ein Projekt zu beginnen, was nicht auf SQL aufsetzt.<BR>
        Gruß, Fran

        Comment


        • #5
          Hallo Frank,

          Interbase, Firebird und andere SQL-Server können den Vorteil der Datenkonsistenz nur voll ausspielen, wenn sie auf einen anderen Rechner/Server installiert sind. Und dies ist bei kleinen Installation (1-3 Desktop-PC's)nicht immer möglich bzw. von der Administration nich erlaubt ("In dieser Firma wird nur SQL-Datenbank xyz eingesetzt"), so das eine Desktopdatenbank hier für ein kleine Workgroup die optimale Lösung ist.

          Das Problem mit defekten Tabellen/Indexe ist bei ADS (und vermutlich auch bei TurboDB) um welten geringer als bei Paradox. Und das bei SQL-Servern auch Indexfehler auftreten können sieht man wenn man im Forum nach Interbase & Indexfehler sucht.

          Und ich denke bei "kleiner Verwaltung" wird der Fall der 1-PC-Installation nicht gerade selten sein, so das die Performance keine Problem ist

          Comment


          • #6
            Hi Ewald,<br>merkst Du was :-)<br>Frage wegen EINES Problems ZWEI Speziallisten und Du wirst mindestens DREI Lösungen bekommen...<br>Bevor ich's vergesse :-) MYSQL ist auch gut und "billig"...<br><br>Michael *grins

            Comment


            • #7
              Guten Abend zusammen,
              erst einmal vielen Dank für die schnelle Reaktion an alle Beteiligten.

              Auch wenn ich im Augenblick noch nicht weiß, welche Datenbank ich nehmen soll, interpretiere ich eure Empfehlungen aber schon einmal soweit, dass ich InterBase als zukunftsträchtigen Kandidaten ausschließe.

              Ich denke aber, dass ich dem Rat von Frank insoweit folgen werde, dass keine reine Desktopdatenbank mehr zum Einsatz kommt. Meine Kunden sind kleine Unternehmen und Selbständige. Hier wird mir kein Systemadministrator reinreden, denn diese Funktion gehört zu den von mir angebotenen Dienstleistungen. In der Regel werden sicherlich keine weiteren Datenbankanwendungen auf den Rechnern laufen.

              MS-SQL und Oracle fallen sicherlich aus Kostengründen aus dem Raster.

              So dass meine Entscheidung wohl zwischen Firebird (kannte ich bisher gar nicht)und MySQL treffen werde. Wobei ich bisher keine Info habe was denn ADS-Server kosten würde ?
              An MySQL ist mir sympathisch, dass diese Datenbank wohl inzwischen bei einigen Web-Entwicklern beliebt ist und dort fleißig für Applikationen genutzt wird.

              Wenn euch noch was einfällt ....

              Nochmals vielen Dank und bis bald
              Ewal

              Comment


              • #8
                Hallo Ewald,<br>ich kann hier nur über mysql berichten. Ich setzte diese sowohl im Web Bereich ein, in Verbindung mit Apache, PHP als auch mit der ZMYSQL-LIB (libmysql.dll) Library in Delphi. Meist in kleinen Unternehmen, welche einen extra Server nicht bezahlen wollen (!). Demnach läuft dort Mysql auf einem Anwendungsrechner mit und dies seit Jahren ohne Probleme (trotz Rechner-Power ON/OFF Spielchen :-). Die Datenbanken haben mehrere 100.000 Datensätze in zig-Tabellen, ohne Probleme. Sicher können hier andere von anderen Datenbanken ähnliches berichten, ist meine Erfahrung.<br><br>Michae

                Comment


                • #9
                  > dass ich InterBase als zukunftsträchtigen Kandidaten ausschließe.

                  Würde ich nicht sagen. Interbase wird immer noch weiterentwickelt und gepflegt.

                  > Hier wird mir kein Systemadministrator reinreden, denn diese Funktion gehört zu den von mir angebotenen Dienstleistungen.

                  Damit fällt sicherlich ein Grund gegen SQl-Server weg.

                  Preisvergleich für ADS Server findest Du unter <a href="http://resolution.extendedsystems.com/ADS/Product+Detail/_Cost+Comparison.htm">Cost Comparisons</a>. Ist billiger als Oracle oder MS-SQL aber teurer als MySQL. Aber MySQL wird für den geschilderten Fall (MySQL wird mit der Anwendung "gebündelt" auch ein paar € kosten.

                  Comment


                  • #10
                    Ewald,

                    als weitere Alternative im Punkt freie SQL-Server sollte an dieser Stelle auch PostgreSQL nicht unerwähnt bleiben... ich arbeite jetzt seit über zwei Jahren mit PostgreSQL (www.de.postgresql.org) und den Zugriffs-Komponenten von Zeos (www.zeoslib.net) und bin restlos zufrieden!

                    Der Server läuft absolut stabil unter SuSE und der Datenzugriff erfolgt völlig problemlos und sauber mit der ZeosLib (eine DLL im Anwendungsverzeichnis, der Rest direkt in Deiner Applikation).

                    Ralp

                    Comment

                    Working...
                    X