Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Unterschiede zwischen den verschiedenen DBMS (https://www.delphipraxis.net/81551-unterschiede-zwischen-den-verschiedenen-dbms.html)

Namron 29. Nov 2006 10:38

Datenbank: - • Zugriff über: -

Unterschiede zwischen den verschiedenen DBMS
 
Hallo,

im Moment interessiert mich welche Unterschiede es genau zwischen den verschiedenen DMBS gibt.
Ich moechte eine Datenbank die im Moment mit Access verwaltet wird(langsam etc.) umstellen auf eine schnellere Moeglichkeit. Außerdem sollte diese auch moeglichst wenig Syntaxunterschiede zu der Access verwalteten Datenbank aufweisen. Koennt ihr mir da vielleicht helfen, heraus zufinden welche wahrscheinlich mit am besten ist? Ich habe zwar schon die Board suche betaetigt und Google sowieso aber keine konkrete gegenuebrstellung der verschiedenen Moeglichkeiten.

Namron.

Phoenix 29. Nov 2006 10:44

Re: Unterschiede zwischen den verschiedenen DBMS
 
Hrm..

Ehrlich gesagt: da kann man ganze Doktorarbeiten drüber schreiben über das Thema.

Nur mal ne kurze, beileibe nicht vollständige Liste an möglichen Alternativen:
  • MS SQL Server
  • Oracle
  • MySQL
  • Postgres
  • Caché
  • Advantage Database Server
  • IBM DB2
  • Interbase
  • Firebird
Und das sind nur die, die mir jetzt gerade so spontan eingefallen sind. Es gibt sicher noch andere.

Wenn Du eine willst, die relativ nahe an Deiner benutzten JET Engine liegt mit dem SQL, dann bist Du beim Microsoft SQl Server schonmal nicht ganz so falsch aufgehoben. Hier dann freilich die 2005er Express Edition.

Bernhard Geyer 29. Nov 2006 11:08

Re: Unterschiede zwischen den verschiedenen DBMS
 
Beim Database-Journale gibts ein paar halbwegs brauchbare Gegenüberstellungen.

Ansonsten wie Phoenix geschrieben hat. Dazu kannst Du eine Doktorarbeit bzw. ein Buch schreiben. Gabs übrigens mal eines vom Thompson-Publishing welche die SQL-Unterschiede beleuchtet hat, jedoch ist dieses Ausverkauft.

Namron 29. Nov 2006 11:13

Re: Unterschiede zwischen den verschiedenen DBMS
 
Danke schon mal fuer die Antwort ich moechte natuerlich nicht das ihr Doktorarbeiten schreiben muesst. ;)

Ich habe da noch 2 Informationen bekommen was das DMBS leisten soll.
Es soll performant sein, nach moeglichkeit kostenlos und (das ist fuer mich einder der Knackpunkte) man muss es mit ausliefern und beim Kunden installieren duerfen.

Der MS SQL Server scheidet deshalb leider aus. Der ist ... ein wenig teuer und ich glaube MySQL darf nicht mit ausgeliefert werden oder in der Art(ich kann mich irren hatte aber mal so was gehoert).

/Edit
Ich werde mir den Link gleich mal naeher zu Gemuete fuehren :)

Phoenix 29. Nov 2006 11:17

Re: Unterschiede zwischen den verschiedenen DBMS
 
Zitat:

Zitat von Namron
Der MS SQL Server scheidet deshalb leider aus. Der ist ... ein wenig teuer

Genau deswegen habe ich explizit auf die kostenlose Express-Edition hingewiesen.

Bernhard Geyer 29. Nov 2006 11:18

Re: Unterschiede zwischen den verschiedenen DBMS
 
Zitat:

Zitat von Namron
Ich habe da noch 2 Informationen bekommen was das DMBS leisten soll.
Es soll performant sein,

Will das nicht jede sein :gruebel:
Zitat:

Zitat von Namron
nach moeglichkeit kostenlos und (das ist fuer mich einder der Knackpunkte) man muss es mit ausliefern und beim Kunden installieren duerfen.

Dann wird MySQL rausfallen. Wenn Du es als Bestandteil deiner Auslieferung hast und deine SW nicht Open-Source ist kosted MySQL etws.

Wie groß wird denn die DB? Evtl. reichen ja auch die Kostenlosen Versionen von MS SQL, Oracle und DB2.

Ansonsten wären da noch Firebird, Postgres oder Desktop-Datenbanken die "nur" Entwicklerlizenzen kosten.

Namron 29. Nov 2006 11:35

Re: Unterschiede zwischen den verschiedenen DBMS
 
Ah stimmt sorry hatte das Express wohl ueberlesen :)


Es ist eine sehr allgemein Datenbank von daher kann sie sehr groß werden. Da meien SW kein Open-Source ist wird das wohl nichts mit MySQL. Ich gehe mal davon aus das ich dann den MSSql Server verwenden werden. Er ist ja garantiert schneller als Access ;)

Phoenix 29. Nov 2006 11:43

Re: Unterschiede zwischen den verschiedenen DBMS
 
Was ist bei Dir 'sehr groß'? Ab 4GB Datenvolumen streikt die MS SQL Express Edition und will zur Kommerziellen Version upgedatet werden. Ab ca. 750 MB Datenvolumen musst Du mit Performanceeinbrüchen rechnen, weil die Express maximal 1 GB RAM in Anspruch nimmt.

alzaimar 29. Nov 2006 12:12

Re: Unterschiede zwischen den verschiedenen DBMS
 
Phoenix,
So ei
Zitat:

Zitat von Phoenix
Was ist bei Dir 'sehr groß'? Ab 4GB Datenvolumen streikt die MS SQL Express Edition und will zur Kommerziellen Version upgedatet werden. Ab ca. 750 MB Datenvolumen musst Du mit Performanceeinbrüchen rechnen, weil die Express maximal 1 GB RAM in Anspruch nimmt.

Das ist eine Milchmädchenrechnung. Wir haben hier eine DB von 4GB, einen schmalbrüstigen Test-Server mit 512MB, und die Cache-Hit-Rate liegt bei >99%. Die Speicherauslastung des SQL-Servers sind um die 200MB.

Du benötigst immer nur soviel RAM, wie Du Daten verwendest, und nicht, wie groß die Datenmenge ist. Bei einer normalen DV werden maximal 200MB an Daten benötigt, der Rest ist Historie.

Wenn Du dann mal eine Auswertung über einen längeren Zeitraum fährst, muss sich der DB-Server die Daten reinladen. Ob der dann 512MB oder 10GB RAM hat, ist unwichtig, weil er sowieso die Daten saugen muss.

Benötigst Du diese Auswertungen öfters, könnte RAM hier etwas bringen. Aber besser wäre dann eine redundante Tabelle, die die Auswertung auf Vorrat hält.

Etwas anders verhält es sich bei einer Anwendung mit vielen vielen Usern.

Wir verwenden die MSDE und können keine Performanceinbußen im Vergleich zur kommerziellen Version feststellen. Sie ist im Lastbetrieb etwas langsamer, weil sie auf einer WS läuft und nicht auf einem Server. Das ist Alles. Aber schnell genug ist sie allemal.

Ich würde MSSQL oder Firebird verwenden, um ehrlich zu sein.

mkinzler 29. Nov 2006 12:22

Re: Unterschiede zwischen den verschiedenen DBMS
 
Ich glaube Phoenix meint die Beschränkeung, die MS der Express auferlegt hat.

Bernhard Geyer 29. Nov 2006 12:29

Re: Unterschiede zwischen den verschiedenen DBMS
 
Zitat:

Zitat von Namron
Es ist eine sehr allgemein Datenbank von daher kann sie sehr groß werden. Da meien SW kein Open-Source ist wird das wohl nichts mit MySQL. Ich gehe mal davon aus das ich dann den MSSql Server verwenden werden. Er ist ja garantiert schneller als Access ;)

Solange Du nicht nur MySQL unterstützt sondern auch andere DBMS und das MySQL-Setup nicht selbst mitlieferst ist es kein Problem.
Zitat:

Zitat von Phoenix
Was ist bei Dir 'sehr groß'? Ab 4GB Datenvolumen streikt die MS SQL Express Edition und will zur Kommerziellen Version upgedatet werden. Ab ca. 750 MB Datenvolumen musst Du mit Performanceeinbrüchen rechnen, weil die Express maximal 1 GB RAM in Anspruch nimmt.

1 GB sollten fast immer genügend Speicher sein. Das ist erst dann ein Problem wenn Indexe nicht mehr im Speicher gehalten werden können.

Namron 29. Nov 2006 12:48

Re: Unterschiede zwischen den verschiedenen DBMS
 
Es kann gut moeglich sein das die Datenbank in nacher Zukunft ueber die 4 GB Speicherplatzgrenze kommt.

Was waere denn mit PostgreSQL? Ist das eine moegliche Option?

Phoenix 29. Nov 2006 12:48

Re: Unterschiede zwischen den verschiedenen DBMS
 
Zitat:

Zitat von alzaimar
Du benötigst immer nur soviel RAM, wie Du Daten verwendest, und nicht, wie groß die Datenmenge ist. Bei einer normalen DV werden maximal 200MB an Daten benötigt, der Rest ist Historie.

Äh. Da hatter natürlich recht. Naja.. wenn die komplette DB in den DB-Memory passt isses freilich gar nie ein Problem, aber es stimmt: Es werden freilich nur die Daten immer im Speicher gehalten die am meisten verwendet werden, und damit muss die DB auch bei größeren Datenbeständen relativ selten auf die Platte gucken. Hab ich nicht weit genug gedacht.

Elvis 29. Nov 2006 13:09

Re: Unterschiede zwischen den verschiedenen DBMS
 
Wenn es zwischen MSSQL und Firebird geht, würde ich spontan für Firebird plädieren.
Ich hatte in den letzten Monaten genug mit MSSQL zu tun um es aus reinem Herzen hassen gelernt zu haben.[1]

Was man bei diesem Viech auch nicht unterschätzen sollte ist, wie tief er sich in einem System eingräbt.
Firebird wird ruck zuck installiert und kann auch wieder ruck zuck vollständig deinstalliert werden. Man kann MSSQL nicht einfach so deinstallieren, zumindest nicht vollständig. Und eine Installation ist definitiv nicht ohne Side effects.
Firebird mag nicht ganz so flink wie MSSQL sein, aber es kostet rein gar nix und man hat damit wenigstens eine Chance mit wenig Änderungen auch andere (non-MS) DBMS zu verwenden.
Ich glaube wenn ihr bisher ein lokales Pseudo-DBMS wie Jet benutzt habt, dürfte Firebird mehr als nur "good enough" sein.

[1]) Ich bin allerdings ein "alter" Oracle-Fritze und MSSQL ist für jemanden, der Ora gewohnt ist, als ob sich ein Benz-Fahrer in einen Trabi quetschen muss (einen abartig hässlichen Trabi, wenn ich mal auf die Syntax von TSQL verweisen darf *schauder*).

Der_Unwissende 29. Nov 2006 14:27

Re: Unterschiede zwischen den verschiedenen DBMS
 
[OT]
Zitat:

Zitat von Elvis
Firebird wird ruck zuck installiert und kann auch wieder ruck zuck vollständig deinstalliert werden.

....
[1]) Ich bin allerdings ein "alter" Oracle-Fritze

Hm, nur was das schnelle Installieren und Oracle angeht, was stimmt nicht? :wink: (ein "alter" Oracle-Fritze würde doch hier nicht den Vergleich mit Firebird scheuen?)

Gruß Der Unwissende
[/OT]

Elvis 29. Nov 2006 14:57

Re: Unterschiede zwischen den verschiedenen DBMS
 
Zitat:

Zitat von Der_Unwissende
Hm, nur was das schnelle Installieren und Oracle angeht, was stimmt nicht? :wink: (ein "alter" Oracle-Fritze würde doch hier nicht den Vergleich mit Firebird scheuen?)[/OT]

Lol, nein! Ora deinstalliert man vollständig indem man die Kiste neu aufsetzt oder wegschmeißt. :lol:
Aber es ging hier nicht um Ora, das wäre wohl ein wenig zu hoch gegriffen. ;)
Wenn MSSQL gut genug ist, würde ich erst genau überlegen, ob Firebird nicht vllt auch gut genug ist, bevor ich mir/dem Kunden/irgendeiner armen, unbekannten Kreatur dieses Viech antun würde.

DGL-luke 29. Nov 2006 15:30

Re: Unterschiede zwischen den verschiedenen DBMS
 
:gruebel:
Zitat:

Dann wird MySQL rausfallen. Wenn Du es als Bestandteil deiner Auslieferung hast und deine SW nicht Open-Source ist kosted MySQL etws.
Quelle? Wenns nur um die GPL geht, is ja auch kein Problem... entweder du installierst es für den kunden, oder du sagst dem kunden wo ers runterladen kann. warum mitliefern?


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz