AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Fat Server oder lieber austauschbare Datenbank?
Thema durchsuchen
Ansicht
Themen-Optionen

Fat Server oder lieber austauschbare Datenbank?

Ein Thema von squetk · begonnen am 23. Okt 2007 · letzter Beitrag vom 23. Okt 2007
Antwort Antwort
Seite 1 von 2  1 2      
squetk

Registriert seit: 29. Aug 2004
Ort: Cottbus
118 Beiträge
 
Delphi XE2 Professional
 
#1

Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 12:39
Datenbank: Interbase/FireBird • Version: 6 / 1.5 • Zugriff über: IBX / .NET-Provider
Hallo,

in unserem Programmierteam tobt ein Glaubenskrieg - prinzipiell geht es darum, wieviel Funktionalität in den Datenbankserver ausgelagert werden sollte.

Es gibt einerseits die Meinung, dass die komplette Businessschicht in der Datenbank als Stored Procedures implementiert sein sollte (Vorteil u.a.: Performancegewinn und Funktionalitätsbereitstellung für unterschiedliche auf die DB zugreifende Clients).

Im Gegensatz dazu steht die Vorstellung, dass die Datenbank nur die Rolle eines reinen Datenspeichers spielt. Der Zugriff aus dem Programm erfolgt über eine möglichst universelle Datenzugriffsschicht, so dass das Datenbanksystem selbst austauschbar bleibt.

Da sich diese Konzepte grundsätzlich beissen, würde uns eure Meinung dazu interessieren!
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#2

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 12:43
Zitat von squetk:
(Vorteil u.a.: Performancegewinn
Das würde ich nicht unterschreiben. SP's sind zum Teil abartig Lahm.

Zitat von squetk:
Im Gegensatz dazu steht die Vorstellung, dass die Datenbank nur die Rolle eines reinen Datenspeichers spielt. Der Zugriff aus dem Programm erfolgt über eine möglichst universelle Datenzugriffsschicht, so dass das Datenbanksystem selbst austauschbar bleibt.
Allein der letzte Grund (Austauschbarkeit der DB) sollte ausreichend sein um sich dafür zu entscheiden.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
smudo

Registriert seit: 6. Sep 2005
Ort: Cottbus
362 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 12:53
Zitat von Phoenix:
Das würde ich nicht unterschreiben. SP's sind zum Teil abartig Lahm.
Laut meiner Erfahrung muss ich dem widersprechen. "abartig Lahm" ist auch schlecht messbar - auf welchen Ergebnissen beruht denn deine These?

Zitat von Phoenix:
Allein der letzte Grund (Austauschbarkeit der DB) sollte ausreichend sein um sich dafür zu entscheiden.
Das kommt wohl darauf an, wie oft man seine DB austauscht. Zeigt die Praxis nicht eher, dass dieser Fall sehr selten eintritt?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 12:55
Zitat von smudo:
Das kommt wohl darauf an, wie oft man seine DB austauscht. Zeigt die Praxis nicht eher, dass dieser Fall sehr selten eintritt?
Als SW-Anbieter wenn man seine Anwendung nicht nur für DBMS "A" sondern auch für DBMS "B" anbieten will ist es u.U. sehr aufwendig für jede DB die SP's zu programmieren.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#5

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 13:05
Zitat von smudo:
Zitat von Phoenix:
Das würde ich nicht unterschreiben. SP's sind zum Teil abartig Lahm.
Laut meiner Erfahrung muss ich dem widersprechen. "abartig Lahm" ist auch schlecht messbar - auf welchen Ergebnissen beruht denn deine These?
Sagen wir es mal so: Mit SP's haben wir die Zeitvorgaben des übergeordneten Systems bei einer Anlagensteuerung nicht erreichen können. Die gleichen Statements aus einer Anwendung abgesetzt haben die Zeitvorgaben erfüllt. Das ganze auf Oracle 10.

Und was die Portabilität angeht:
Du enwickelst für z.B. explizit für Oracle. Ein Kunde kommt zu Dir: 'Also wir würden hundert Lizenzen nehmen. Bei uns wird nur Firebird eingesetzt. Unterstützen Sie das?'. Der nächste Kunde kommt mit einer Konzernvorgabe: Nur SQL Server...
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
squetk

Registriert seit: 29. Aug 2004
Ort: Cottbus
118 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 13:19
Ein Argument der Pro-Fat-Server-Fraktion lautet, dass eine universelle Datenzugriffschicht aufwändiger zu programmieren ist und nicht die jeweiligen Features der eingesetzten Datenbank berücksichtigen kann.
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#7

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 13:21
Zitat von squetk:
Ein Argument der Pro-Fat-Server-Fraktion lautet, dass eine universelle Datenzugriffschicht aufwändiger zu programmieren ist und nicht die jeweiligen Features der eingesetzten Datenbank berücksichtigen kann.
Das Argument kannst du mit Frameworks wie NHibernate nicht nur in den Wind schlagen, sondern deinen Gegnern auch gleich das nächste Argument versauern: mit Hibernate auf die Datenbank zuzugreifen ist weit weniger Fehleranfällig als über SQL und SPs.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#8

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 13:24
Eine universelle Datenzugriffsschicht gibt es schon. Die nennt sich DBx4 und ist im aktuellen Delphi dabei. Muss man nicht aufwändig programmieren.

Natürlich kann man damit irgendwelchen speziellen xy-Features einer speziellen Datenbank nicht nutzen. Und das ist gut so. Denn dieses Feature xy, welches es nur auf dieser Datenbank gibt, könnte letzlich dafür sorgen, dass man einen risiegen Auftrag nicht bekommt. Eben weil man die Anwendung nicht auf die einzige Datenbank protieren kann, die der Interessent eben z.B. durch Konzernvorgaben einsetzen muss.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 13:35
Zitat von Bernhard Geyer:
Zitat von smudo:
Das kommt wohl darauf an, wie oft man seine DB austauscht. Zeigt die Praxis nicht eher, dass dieser Fall sehr selten eintritt?
Als SW-Anbieter wenn man seine Anwendung nicht nur für DBMS "A" sondern auch für DBMS "B" anbieten will ist es u.U. sehr aufwendig für jede DB die SP's zu programmieren.
Ganz genau.
Ußerdem ist selbst Oracles PL/SQL noch abartig hässlich, verglichen mit den Hochsprachen, mit denen man in einem Applikationsserver die Businesslogik implementieren würde. Und verglichen mit PL/SQL ist so ziemlich jeder andere prozedurale SQL-Dialekt abartig hässlich...
Wenn das nicht in der DB gemacht wird, wird diese auch noch entlastet. Skalieren durch das Aufrüsten der Applikationsserver oder das Hinzufügen von weiteren kostet nur Hardware. Beim Aufrüsten von DB Servern fallen auch noch die recht happigen Lizenzgebühren an. (Es gibt kaum clusterfähige, freie DBMS')
Ein DBMS, das nicht clusterfähig ist, als die einzige serverseitige Implementierung zu benutzen heißt, dass euer System gar nicht skalieren kann.
Das ist ganz böse, denn solche System sind es die mit wachsenden Unternehmen irgendwann nicht mehr mithalten können. Ein verantwortungsvoller IT'ler würde sich also vehement gegen euer System aussprechen (und zu 100% recht haben!).

Falls ihr euch in beiden Lagern nur um eine klassische 1990'er, 2-schichtige Client/Server-Anwendung gezankt habt, solltet ihr dringend über eine mehrschichtige Lösung nachdenken, bei der der Client keine Businesslogik implementiert, die steckt im App-Server.
Außerdem ist die Datenbank nur innerhalb des Serverraums, nur für die App-Server sichtbar, was die ganze Sache viel sicherer macht. Außerdem könnt ihr so ein eigenes User-/Authentifizierungssystem benutzen, was mehr über einen User weiß als es ein DBMS könnte.
Authentifizierung über LDAP oder Active Directory wäre dann auch möglich...
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: Fat Server oder lieber austauschbare Datenbank?

  Alt 23. Okt 2007, 13:35
Zitat von Phoenix:
Eine universelle Datenzugriffsschicht gibt es schon. Die nennt sich DBx4 und ist im aktuellen Delphi dabei. Muss man nicht aufwändig programmieren.
Jein. Damit werden aber nicht (wie bei NHypernate oder ECO) auch die SQL-Unterschiede gekapselt.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz