Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Mehrere DATABASE.FDB - Performance-Frage? (https://www.delphipraxis.net/200344-mehrere-database-fdb-performance-frage.html)

erich.wanker 11. Apr 2019 11:28

Datenbank: Firebird • Version: 2.5 • Zugriff über: ZEOSLIB

Mehrere DATABASE.FDB - Performance-Frage?
 
Hallo,
FirebirdSQL 2.5 via ZeosLib - Delphi XE4

Da ich in vielen Tabellen (Verbraucherpreisindex, Einheiten, Sprachtabelle ect..) Werte habe, die ich aktualisieren will/muss habe ich zwei Möglichkeiten:

1. Tabellen via Software aktualisieren (import/export funktion)

2. eigenständige DATABSE.FDB mit einer Tabelle (und die beim Kunden einspielen)

.. Wenn ich ca. 20 FDB (mit jeweils nur 1 tabelle) verwende - wie ist das dann mit der Performance? ..
(Im Moment habe ich eine FDB Datei - und eine ZConnection )

Danke für Hinweise
Erich

mkinzler 11. Apr 2019 11:32

AW: Mehrere DATABASE.FDB - Performance-Frage?
 
Bei einer Datenbank pro Tabelle hättest Du das Problem, dass keine Constraints möglich sind.

hoika 11. Apr 2019 12:41

AW: Mehrere DATABASE.FDB - Performance-Frage?
 
Hallo,
och würde Punkt2 nehmen.
Schon das Backup der 20 DBs ist schon aufwendiger als eine einzige.

20 Dateien öffnen dauert auch länger als 1.
Außerdem wird mehr Speicher verbraten, wobei man das einstellen kann.

Zum Einspielen der Daten könntest du auch external tables mißbrauchen.

Delphi.Narium 11. Apr 2019 13:07

AW: Mehrere DATABASE.FDB - Performance-Frage?
 
Zitat:

Zitat von erich.wanker (Beitrag 1430058)
Hallo,
Da ich in vielen Tabellen (Verbraucherpreisindex, Einheiten, Sprachtabelle ect..) Werte habe, die ich aktualisieren will/muss habe ich zwei Möglichkeiten:

Handelt es sich hierbei um Nachschlagtabelen, Steuertabellen ... die für das Programm dienen, aber keinen direkten Bezug zu den eigentlichen Daten haben?
Also z. B. das Befüllen von Comboboxen, Listen ... zwecks Auswahl durch den Anwender, wobei die getroffene Auswahl dann in die "richtigen" Daten übernommen wird?

Also quasi ein Telefonbuch, dass man als Auswahlmöglichkeit für eine eigene Adressverwaltung nutzt ohne nach der Auwahl darauf zu referenzieren?

Sie dient als reines Nachschlagwerk und ist kein Bestandteil des Datenmodells der Anwender- / Kundendaten?

Sind sie grundsätzlich für alle Anwender / Kunden inhaltlich identisch? Immer!

Wenn keine Fremdschlüsselbeziehungen oder sonstige Abhängigkeiten zwischen Anwender- / Kundendaten und diesen Tabellen bestehen und die Tabellen inhaltlich nicht vom Anwender / Kunden verändert werden können, kann man eine eigene Datenbank nehmen, wenn es absolut unschädlich ist, eine vorhandenen Datenbankdatei gegen eine neu Version auszutauschen.

erich.wanker 11. Apr 2019 13:38

AW: Mehrere DATABASE.FDB - Performance-Frage?
 
"Handelt es sich hierbei um Nachschlagtabelen, Steuertabellen ... die für das Programm dienen, aber keinen direkten Bezug zu den eigentlichen Daten haben?"

Ja ... genau um diese Art von Daten handelt es sich.

Delphi.Narium 11. Apr 2019 13:47

AW: Mehrere DATABASE.FDB - Performance-Frage?
 
Da kann man eine eigene Datenbank für nehmen.

Dies ist aber keine Performancefrage, sondern eher eine Frage der Arbeitserleichterung, wenn man diese Daten mal "globalgalaktisch" bei allen Anwendern / Kunden zeitnah ändern muss.

Man muss dann keine Teilmenge einer Datenbank, die auch Kundendaten enthält, ändern, sondern tauscht einfach nur die Datenbankdatei aus.

Bei Firebird dürfte das relativ "leichtgängig" sein, ob man's auf andere Datenbanken mal ebenso übertragen kann, wage ich zu bezweifeln.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:42 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