/ Je možné riešenie konfliktu riadené časovou pečiatkou? - sqlite, synchronizácia, konflikt, offline, zumero

Je možné riešenie konfliktu riadené časovou pečiatkou? - sqlite, synchronizácia, konflikt, offline, zumero

Podľa Zumero pre dokumentáciu pre SQL Server predvolené správanie pri riešení konfliktov je použitie čísla záznamu verzie.

Je však možné namiesto toho založiť časové pečiatky? Obchodným pravidlom je, že záznam, ktorý bol naposledy aktualizovaný, by mal vyhrať.

Je tiež možné (a dosť jednoduché) synchronizovať do každého klientskyho zariadenia špecifickú podkapitolu databázy na strane servera?

PS: Predpokladom je, že čas zákazníckeho zariadenia je zhruba synchronizovaný s internetovým časom - na zariadení sa bude pravidelne vykonávať kontrola. Vzhľadom na povahu údajov nie je problém, ak sú hodiny klienta niekoľko sekúnd. Vo výnimočnom prípade, keď sa aktualizácie vyskytnú v priebehu 5 sekúnd, skutočne nezáleží na tom, ktorý z nich vyhrá. Najdôležitejšie je, že v priemere a medzi všetkými klientmi vyhrá posledný rekord.

odpovede:

1 pre odpoveď č. 1

Rozlíšenie konfliktu podľa časovej značky

Stručne povedané, nie. V dnešnej dobe nie je možné vybrať "víťaznú" zmenu časovej pečiatky, ale mali by ste sa opýtať, či je to naozaj to, čo chcete. :)

Zumero pre SQL Server dokumenty sú neúplné, ale podrobnosti o riešení konfliktu v dokumentoch služby cloud server sú stále správne. (Spôsob, akým ich nastavujete, sa mení, ale samotné pravidlá sa nemenia.) Stručne povedané:

Záznamy majú čísla verzií. Pokiaľ dvaja používatelia nezmenia rovnakú verziu toho istého záznamu, najnovšia verzia je vždy prijatá, čo je rovnaké správanie, ktoré ste dostali s časovými značkami (bez problémov spojených s nepresnými systémovými hodinami).

Ak dvaja používatelia zmenia rovnakú verziu riadku, máte konflikt. Predvolené riešenie konfliktu je zlúčenie stĺpcov:

  • Zmeny rôznych stĺpce rovnakého záznamu sú akceptované.
  • Pre konfliktné zmeny v rovnakom stĺpci toho istého záznamu sa prijme posledný, ktorý sa dostal na server.

Rozlíšenie konfliktov môžete zmeniť tak, žeserver akceptuje najnovšiu verziu synchronizovanú, bez zlúčenia stĺpcov, čo môže byť to, čo chcete. Z pohľadu servera je to najnovší záznam, ktorý ste urobili zmenou situation_mod_after_mod rozlíšenie do action_accept.

Rozdelenie databázy SQL Server

Verzia 1.0 (a aktuálna ukážka ukážky) umožňujú vykreslenie databázy SQL Server podľa tabuľky. Pomocou aplikácie ZSS Manager môžete definovať a dbfile.

  • Dbfile je najmenšia synchronizovateľná jednotka.
  • Na klientovi sa súbor dbfile stáva súborom databázy sqlite.
  • Na serveri vyberiete tabuľky, ktoré chcete pridať do súboru dbfile.
  • Tabuľka SQL Server môže patriť len do jedného súboru dbfile.

Viac podrobností nájdete v Dokumentáciu ZSS Manager.