Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbank von Programm über Netzwerk abfragen (https://www.delphipraxis.net/142085-datenbank-von-programm-ueber-netzwerk-abfragen.html)

Jens Hartmann 21. Okt 2009 21:17

Datenbank: Firebird • Version: 2.1 • Zugriff über: ZEOS

Datenbank von Programm über Netzwerk abfragen
 
Hallo und schönen guten Abend zusammen,

folgende Situation: Ich habe ein Programm, welches 3 Datenbanke nutzen tut.

Eine für die Eigendlichen Daten
Eine für die Benutzer Rechte
Eine für die Konfiguration

Das Programm soll als Stand-Alone auf einem Rechner laufen und dort Ereignisse einer Hardware aufzeichenen.

Diese Stand-Alone Lösung könnt in sagen wir mal 100 Objekten realisiert werden.

Jetzt möchte ich an einem Zentralen Ort, über das Hauseigene Netzwerk welches mit allen Objekten vernetzt ist, Zugriff auf die von der Hardware erzeugten Daten haben.

Daher jetzt meine Frage. Ist folgende Lösung Sinnvoll, und wie kann ich diese am besten Umsetzen.

Zentrales Objekt mit wieder 3 Lokalen Datenbanken.

Eine für die Lokalen Benutzer Rechte
Eine für die Lokale Konfiguration also beide Unabhängig vom Rest
Und eine mit den 100 Objekten und deren Verbindungsdaten.

In der Software am Zentralenstandort, welche wie die an den Objekten aufgebaut ist, möchte ich lediglich eine Möglichkeit einfügen einen Verbindung zur IP-Adresse XXX.XXX.XXX.XXX aufzubauen und von dieser die Datenbank zu lesen.

Ist das möglich, und wenn womit müsste ich mich beschäftigen.

Danke schon mal

MFG

Jens

RWarnecke 21. Okt 2009 21:39

Re: Datenbank von Programm über Netzwerk abfragen
 
Dazu habe ich die folgenden Fragen ?

1.) Hat jedes Objekt diese drei Datenbanken ?
2.) Zu 1, wenn ja, warum speichert jedes Objekt in seine eigenene Datenbanken ?
3.) Warum nicht eine zentrale Datenbank (oder auch von mir aus drei), wo alle Objekte Ihre Daten reinspeichern ?

Sir Rufo 21. Okt 2009 21:43

Re: Datenbank von Programm über Netzwerk abfragen
 
Zitat:

Zitat von RWarnecke
Dazu habe ich die folgenden Fragen ?
3.) Warum nicht eine zentrale Datenbank (oder auch von mir aus drei), wo alle Objekte Ihre Daten reinspeichern ?

Wenn die DSL-Leitung mal wieder klemmt dann kann ja nix mehr protokolliert werden, also ein Zwischen-Puffer.

Jens Hartmann 21. Okt 2009 21:45

Re: Datenbank von Programm über Netzwerk abfragen
 
Ja, jedes Objekt soll eigendlich seine eigenen Datenbanken behalten. Hat folgenden Grund.

1. Ich möchte das Speichern der Daten aus Sicherheitsgründen nicht im Netzwerk machen. Die Objekte sind alle über VPN angebunden. Da die Objekte aber kontinuierlich Daten erzeugen, habe ich mich aus Sicherheitsgründen für einen eigenen Rechner mit eigener Datenbank entschieden.

2. Die Größe der DB. Ein Objekt kann je nach Ereignisaufkommen bis zu 10000 Datensätze am Tag erzeugen. Rechnen ih das jetzt hoch auf 100 Objekte wird die Datenbank extrem Groß.

Ich hoffe meine Gründe sind so gut erläutert.

MFG

Jens

Sir Rufo 21. Okt 2009 21:50

Re: Datenbank von Programm über Netzwerk abfragen
 
Auf jeden Fall fällt da die Embedded-Variante flach, muss also die Server-Variante sein.

Ansonsten ist es kein Problem auf die Datenbank zuzugreifen auch via VPN.

IP des DB-Servers, Login-Daten ... wuppdi :mrgreen:

Trotz allem würde ich immer eine Replizierung in den Zentral-Standort vorschlagen, gerade im Hinblick auf die Datensicherung, die dann ja auch zentral erfolgen kann ;)

cu

Oliver

RWarnecke 21. Okt 2009 21:59

Re: Datenbank von Programm über Netzwerk abfragen
 
Zitat:

Zitat von Sir Rufo
Trotz allem würde ich immer eine Replizierung in den Zentral-Standort vorschlagen, gerade im Hinblick auf die Datensicherung, die dann ja auch zentral erfolgen kann ;)

Da bin ich ganz der Meinung vom Oliver. Ich würde einmal am Tag die Datenbanken über VPN auf einem Hauptserver sichern oder in einem anderen Rythmus, so wie Du es brauchst. Dann die Datenbanken entweder zusammenführen oder aber über einen Datenbank-Server die Abfragen von allen Datenbanken machen.

Sir Rufo 21. Okt 2009 22:04

Re: Datenbank von Programm über Netzwerk abfragen
 
Zitat:

Zitat von RWarnecke
Zitat:

Zitat von Sir Rufo
Trotz allem würde ich immer eine Replizierung in den Zentral-Standort vorschlagen, gerade im Hinblick auf die Datensicherung, die dann ja auch zentral erfolgen kann ;)

Da bin ich ganz der Meinung vom Oliver. Ich würde einmal am Tag die Datenbanken über VPN auf einem Hauptserver sichern oder in einem anderen Rythmus, so wie Du es brauchst. Dann die Datenbanken entweder zusammenführen oder aber über einen Datenbank-Server die Abfragen von allen Datenbanken machen.

Nun er kann sich ja dann immer noch entscheiden, von welchem Server er die Abfrage jetzt beantwortet haben möchte.
Ob Zentral-Server oder Objekt-Server. Nettes Feature ist auch, wenn erst beim Objekt-Server probiert wird, und wenn der nicht antwortet, dann die Abfrage über den Zentral-Server laufen lassen.

Ein weiterer Grund für die Replizierung ist auch, wenn mal die Daten von allen Objekten statistisch verglichen werden sollen, dann braucht man die Daten eh an einem Platz, denn sonst rödelt man sich einen Wolf.

Jens Hartmann 22. Okt 2009 06:03

Re: Datenbank von Programm über Netzwerk abfragen
 
Danke Leute,

ich fasse mal kurz zusammen...

Momentan habe ich in meinen Komponenten ja als Server-Verbindung LOCALHOST:Datenbank. Ich müsste jetzt lediglich in diese Einstellungen (Zur Laufzeit der Zentralsoftware) in 192.168.100.100:Datenabank ändern und die Verbindung dann herstellen.

Stellt sich für mich jetzt nur die Frage, ob ich irgendwelche Schutzmassnahmen treffen muss, damit nicht beim schreiben in die Datenbank vom Objekt Rechner es zu Problemen kommt, wenn der Zentral Rechner in diesem Moment Daten holen will. Oder funktioniert das ohne Probleme.

Zitat:

Zitat von Sir Rufo
Ein weiterer Grund für die Replizierung ist auch, wenn mal die Daten von allen Objekten statistisch verglichen werden sollen, dann braucht man die Daten eh an einem Platz, denn sonst rödelt man sich einen Wolf.

Diesen Aspekt finde ich jedoch auch noch ganz Interesant. Allerdings mit dem vergeleichen von Objekten und der Zentralen Datensicherung muss ich mich dann später mal beschäftigen. Aber Grundsätzlich sollte es ja keine Problem sein, wenn die Datenverbindung besteht. Ein Backup durchzuführen und dann mit JOIN etc. auf die verschiedenen Tabellen zuzugreifen.

MFG

Jens

hoika 22. Okt 2009 07:42

Re: Datenbank von Programm über Netzwerk abfragen
 
Hallo,

Zitat:

damit nicht beim schreiben in die Datenbank vom Objekt Rechner es zu Problemen kommt, wenn der Zentral Rechner in diesem Moment Daten holen will. Oder funktioniert das ohne Probleme.
Der Sinn von Transaktionen ist dir schon ein Begriff ?
Oder kurz, nein, es gibt keine Probleme.


Heiko

Jens Hartmann 22. Okt 2009 07:55

Re: Datenbank von Programm über Netzwerk abfragen
 
Zitat:

Zitat von hoika
Der Sinn von Transaktionen ist dir schon ein Begriff ?
Oder kurz, nein, es gibt keine Probleme.

Das mit den Transaktionen ist mir schon klar. Allerdings war ich mir nicht sicher, ob ich trotzallem irgendeine Vorsichtmassnahme einbauen muss.

MFG

Jens


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:11 Uhr.
Seite 1 von 2  1 2      

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