AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Konzeption von Synchronisation/Replikation von Daten(banken)
Thema durchsuchen
Ansicht
Themen-Optionen

Konzeption von Synchronisation/Replikation von Daten(banken)

Ein Thema von Riese · begonnen am 10. Mai 2006 · letzter Beitrag vom 11. Mai 2006
Antwort Antwort
Riese

Registriert seit: 17. Nov 2005
16 Beiträge
 
Delphi 5 Standard
 
#1

Konzeption von Synchronisation/Replikation von Daten(banken)

  Alt 10. Mai 2006, 15:48
Hallo zusammen,

für ein Projekt muss ich folgendes realisieren:

1. Es gibt ein oder mehrere abgesetzte Clients auf unterschiedlichen PCs. Diese laufen unabhängig voneinander.
Regelmässig wird eine Internetverbindung aufgebaut und die Clients kommunizieren mit dem Server.

2. Es können auch auf dem Server Daten eingegeben werden.
Nehmen wir der Einfachkeit halber Kundendaten.

Meine Frage ist nun wie kann die Synchronisation ablaufen.
Ich will es nicht technisch wissen, sondern konzeptionell.

Man unterscheidet
a) Neu anlegen von Kunden (NEW)
b) Ändern von Kundendaten (UPD)
c) Löschen von Kunden (DEL)

Ich habe mir folgende Varianten/Konzepte überlegt:

I.) Jeder neue Eintrag bekommt zusätzlich in einer Art "todo" Tabelle ein Hinweis dass dieser Datensatz verändert ist. Meldet sich nun ein anderer Teilnehmer am Server an, durchsucht er die todo Liste und weiß z.B. NEW #4, UPD #10, DEL #15.
Wenn er die Daten abgeholt hat, löscht er die todo Liste.
Nachteil: Sehr aufwändig und jeder Client bräuchte eine eigene Todoliste.

II.) Oder es gibt keine zusätzlichen Tabellen und bei jedem Eintrag in der Kundenliste gibt es eine Spalte Zeitstempel. Bei jeder Änderung / Neu hinzufügen wird auf dem Server der Zeitstempel aktualisiert.
Die Clients merken sich wann sie das letzte Mal synchronisiert haben und können so sehen dass der Datensatz sich verändert hat/neu dazugekommen ist.
Aber was ist wenn man auf dem Server einen Kunden löscht? Dann fehlt ja dieser Eintrag auf dem Server, der Client bekommt nicht mit dass der Satz fehlt und das sync. klappt nicht mehr.
Man dürfte also nichts mehr löschen sondern den Satz nur als "GELÖSCHT" kennzeichnen.

Was habt ihr noch für Ideen/Konzepte?

Gruß
Riese
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Konzeption von Synchronisation/Replikation von Daten(ban

  Alt 10. Mai 2006, 21:56
Welche Datenbank(en) soll den eingesetzt werden? Viele bieten von sich aus Replikation und wenn Du einige Spielregel beachtest bekommst Du den schwierigen Teil der Replikation vom DBMS "geschenkt".
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Riese

Registriert seit: 17. Nov 2005
16 Beiträge
 
Delphi 5 Standard
 
#3

Re: Konzeption von Synchronisation/Replikation von Daten(ban

  Alt 11. Mai 2006, 13:14
Zitat von Bernhard Geyer:
Welche Datenbank(en) soll den eingesetzt werden? Viele bieten von sich aus Replikation und wenn Du einige Spielregel beachtest bekommst Du den schwierigen Teil der Replikation vom DBMS "geschenkt".
Also das ist noch nicht 100%ig klar.
Wahrscheinlich MySQL oder (T)DBF (DBase).

Hat jemand eine Idee wie das laufen könnte mit der Replikation.
das Problem müssten doch eigentlich schon mehrere gehabt haben.

Gruß in die Ferne
Riese
  Mit Zitat antworten Zitat
Riese

Registriert seit: 17. Nov 2005
16 Beiträge
 
Delphi 5 Standard
 
#4

Re: Konzeption von Synchronisation/Replikation von Daten(ban

  Alt 11. Mai 2006, 14:22
Ein Nachtrag:

Vielleicht werden wir auch eine Firebird Datenbank einsetzen.
Gibt es da auch so eine automatische Replikation?

Gruß
Riese
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

Re: Konzeption von Synchronisation/Replikation von Daten(ban

  Alt 11. Mai 2006, 15:08
Mach doch eine Kombination aus beiden Ansätzen!

Eine Update-Tabelle mit einem Zeitstempel. Dann bekommst Du alle Informationen die Du brauchst und benötigst nur eine Tabelle.

cu

Oliver
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


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 22:47 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