Applikationsdatenbank
-
Hallo,
gehen wir mal von einer beliebigen Applikation aus. Diese Applikation wäre zum Beispiel eine Lagerverwaltung oder Buchhaltung, was auch immer. Besonders hierbei: theoretisch kann entweder einer damit arbeiten oder mehrere Leute gleichzeitig.
Ist es "State of the Art" das über eine SQLite-Datenbank zu machen? Theoretisch könnte man dann die Datenbank entweder lokal (falls lediglich einer damit arbeitet) ablegen oder eben auf einem Netzlaufwerk auf das alle Mitarbeiter/Beteiligten Zugriff haben.
Würde man das so realisieren? Oder eher über eine zentrale Datenbank (mySQL, MSSQL, whatever)?
Schöne Grüße
-
SQLite-Datenbanken sind sicher gut, so lange nur 1 User darauf zugreift.
Sobald mehrere User mit der selben Datenbank arbeiten sollen, kann es zu Problemen kommen!
Details findest du in den FAQs von SQLite: Can multiple applications or multiple instances of the same application access a single database file at the same time?MfG, DonChunior
-
Okay, danke.
Aber wie werden solche Applikationen dann entwickelt? Gehen wir mal von einem "simplen Installer" aus. Es wäre ja irgendwo nervig, wenn man sich seperat noch um eine laufende Datenbank kümmern müsste und diese nicht direkt mitinstalliert wird.
-
Naja, dann aber doch lieber stabil als nervig, oder?!
Datenbankapplikationen besitzen oft eine Server-Client-Architektur - somit sind Server-seitige als auch Client-seitige Installationen notwendig.
Wenn aber der Server einaml läuft, sind recht schnell und einfach weitere Clients installiert. Natürlich kann man das nicht pauschal sagen, es hängt immer von der jeweiligen Applikation ab.
-
Was hat das denn jetzt mit stabil zu tub?
SQLite läuft super stabil.
Die Performance in multi-User Szenarien ist halt nicht gut, aber das ist ja was anderes.Vorschlag:
DBMS-unabhängigen ORM-Mapper verwenden, per Default verwendet die Applikation ne lokale SQLite DB, und wenn man sie entsprechend konfiguriert eben eine andere.
-
Der Vorschlag macht Sinn, vielen Dank!
-
hustbaer schrieb:
Was hat das denn jetzt mit stabil zu tub?
SQLite läuft super stabil ...... solange nur 1 User auf die SQLite-Datenbank zugreift, oder mehrere und das richtige Dateisystem verwendet wird. :p
-
DonChunior schrieb:
hustbaer schrieb:
Was hat das denn jetzt mit stabil zu tub?
SQLite läuft super stabil ...... solange nur 1 User auf die SQLite-Datenbank zugreift, oder mehrere und das richtige Dateisystem verwendet wird. :p
Da gibts immer noch keine stabilitätsprobleme.
mal abgesehen davon, dass man kein sqlite verwendet, wenn man mehrere gleichzeitige user hat.
-
Ferenz schrieb:
... theoretisch kann entweder einer damit arbeiten oder mehrere Leute gleichzeitig.
...Shade Of Mine schrieb:
...
mal abgesehen davon, dass man kein sqlite verwendet, wenn man mehrere gleichzeitige user hat.Tja und so schließt sich der Kreis wieder.
-
@DonChunior
SQLite ist super-stabil, auch mit mehreren Usern. Es ist nur nicht super schnell.Und es kommt nicht mit kaputten File-System-Implementierungen klar.
Man kann also sagen dass es nicht robust gegenüber Defekten im File-System ist. Zu sagen dass SQLite nicht stabil wäre ist aber mMn. nicht richtig. Das Problem ist die File-System-Implementierung.Mit der gleichen Logik könnte man behaupten dass bestimmte CPUs "nicht stabil" sind, nur weil sie etwas anspruchsvoller gegenüber RAM-Timings sind. So lange die CPUs aber nicht mehr benötigen als das was der Standard für die RAMs vorschreibt, liegt der Fehler klar bei den RAMs und nicht bei der CPU.
Und die Sache dass man SQLite üblicherweise nicht in Multi-User Szenarien einsetzt hat nichts mit der Frage der Stabilität zu tun. Deine Aussage war einfach nicht richtig. Da hilft es auch nix wenn du mit fehlplatzierten Redewendungen um dich wirfst.
-
@ hustbaer: Egal, welchen deiner Beiträge man liest - die besserwisserische Arroganz darin stinkt bis zum Himmel.