AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Ansätze für Daten Synchronisation? (keine Threads)
Thema durchsuchen
Ansicht
Themen-Optionen

Ansätze für Daten Synchronisation? (keine Threads)

Ein Thema von Kalfany · begonnen am 1. Jun 2010 · letzter Beitrag vom 7. Jun 2010
Antwort Antwort
Seite 2 von 2     12   
blackfin
(Gast)

n/a Beiträge
 
#11

Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 2. Jun 2010, 17:05
Zitat:
...denn ganz so trivial ist es dann leider doch nicht
Ok, dann sag uns doch mal bitte, was daran nicht trivial ist bzw. wo das Problem dabei liegt?
Du willst doch Tabellen vom Server mit denen von den Clients syncen, richtig?
Passiert diese Synchronisation der Datensätze nur auf einem Weg (neue Datensätze vom Server => Client) oder auch umgekehrt (neue lokale Datensätze aller Clients => Server).
Dann wird das ganze natürlich komplexer.
  Mit Zitat antworten Zitat
Kalfany

Registriert seit: 28. Feb 2008
Ort: München
153 Beiträge
 
Delphi 2007 Professional
 
#12

Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 2. Jun 2010, 17:07
Zitat von mkinzler:
Es kommt dabei auch darauf an, in welche Richtung und wieviele Pools es gibt (werden Änderungen gemacht, welche in die Datenbasis zurückgeschrieben werden müssen)
Zitat von blackfin:
Zitat:
...denn ganz so trivial ist es dann leider doch nicht
Ok, dann sag uns doch mal bitte, was daran nicht trivial ist bzw. wo das Problem dabei liegt?
Du willst doch Tabellen vom Server mit denen von den Clients syncen, richtig?
Passiert diese Synchronisation der Datensätze nur auf einem Weg (neue Datensätze vom Server => Client) oder auch umgekehrt (neue lokale Datensätze aller Clients => Server).
Dann wird das ganze natürlich komplexer.
Alle Richtungen
Jeder Client soll Daten erzeugen können die er dann zum "Server" synct, die sollen dann nat. auch an die anderen Clients verteilt werden ... kann aber auch sein das der "Server" selber Daten erzeugt die dann an alle Clients müssen.

Zitat von mkinzler:
Wenn du ein DBMS verwendest, würde ich eine spezielle DBMS bezogene Lösung verwenden.
SyncML ist theoretisch aucxh geeignet du müsstest dich dann aber um die Kapselung deiner daten kümmern
Genau das wird schwer, denn (z.B) MySQL gibts auf mobilen Clients (Handy ...) nicht wirklich. Bzw. glaub ich nicht das es ein DBMS gibt das wirklich Plattform übergreifend verfügbar ist (und auch was taugt)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#13

Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 2. Jun 2010, 17:12
Eine Replikation einer Menge an Pools ist natürlich komplexer. Am Besten arbeitet man hier mit verschiedenene Nummerkreisen ( jeder Pool hat eigenen). In welcher Form werden die Daten lokal gespeichert?
Markus Kinzler
  Mit Zitat antworten Zitat
Kalfany

Registriert seit: 28. Feb 2008
Ort: München
153 Beiträge
 
Delphi 2007 Professional
 
#14

Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 2. Jun 2010, 17:22
Zitat von mkinzler:
Eine Replikation einer Menge an Pools ist natürlich komplexer. Am Besten arbeitet man hier mit verschiedenene Nummerkreisen ( jeder Pool hat eigenen). In welcher Form werden die Daten lokal gespeichert?
Meine Idee dazu:
die "Haupt-ID" -> Timestamp+Zufallswert (um sicher zu sein) damit könnte jeder Client (und auch der Server) neue Einträge erzeugen ohne das sich die IDs dann beim Sync überschneiden. (auch lässt sich das ganze dank Timestamp noch sortieren/indizieren) Die Trennung zwischen Server und Client IDs halte ich für weniger Sinnvoll ... dann muss man zum einen die Nummernkreise irgendwo pflegen, und irgendwann kommts dann sicher mal das die Kreise zu klein werden.


Was meinst du mit "Form"? das DBMS oder die Datenstruktur ... wie gesagt DBMS das was für diese Platform gerade verfügbar ist, und zur Struktur ... ka. bisher gibt es noch keine wirklichen Pläne ... daher auch erstmal die Theorie
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#15

Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 2. Jun 2010, 17:24
Möglicher Ansatz:

Der Server hat die Macht über die ID eines Datensatzes.
Wenn der Server neue Datensätze schreibt, vergibt er eh neue ID's.
Erzeugen die Clients offline neue Datensätze, wird diese globale ID erstmal freigelassen.
Erfolgt dann ein Sync von diesem Client, werden die Datensätze vom Server mit einer ID versehen und diese IDs in die Datensätze des lokalen Clients zurückgeschrieben.
Somit erhält jeder Datensatz eine eindeutige ID und kann identifiziert und verteilt werden.
Problematisch wird es dann jedoch, wenn ein Datensatz, der bereits besteht, sowohl vom Server als auch von einem Client modifiziert wird.
Bei einem Sync gäbe es dann eine Kollision. Trifft das bei deinem Problem überhaupt zu oder gibt es generell nur immer neue Datensätze bzw. werden bestehende immer nur von einem (Server?) geändert?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#16

Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 2. Jun 2010, 17:26
Zitat:
Erzeugen die Clients offline neue Datensätze, wird diese globale ID erstmal freigelassen.
Oder man verwendet verschiedene Nummernkreise
Markus Kinzler
  Mit Zitat antworten Zitat
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
946 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#17

Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 2. Jun 2010, 18:46
Hi,

wenn es nur um dir Theorie geht, dann bitte hier wissend machen.
Es ist eine Möglichkeit und sie funktioniert.
  Mit Zitat antworten Zitat
Kalfany

Registriert seit: 28. Feb 2008
Ort: München
153 Beiträge
 
Delphi 2007 Professional
 
#18

AW: Re: Ansätze für Daten Synchronisation? (keine Threads)

  Alt 7. Jun 2010, 08:09
Hi,

wenn es nur um dir Theorie geht, dann bitte hier wissend machen.
Es ist eine Möglichkeit und sie funktioniert.
So wirklich viel gibt das jetzt nicht her ...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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:41 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