eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingreplikacja prostej bazy - czy da się lepiej?replikacja prostej bazy - czy da się lepiej?
  • Data: 2011-07-25 13:21:20
    Temat: replikacja prostej bazy - czy da się lepiej?
    Od: Szyk <s...@o...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Witam

    Mam zamiar zrobić prostą aplikację opartą na bazie Sqlite z 4 tabelami
    do replikacji. Aplikacja ma być dostępna na PC i smartfony . Replikacja
    ma się odbywać między PC i smartfonami (standardowo z jednym) w pełni
    automatycznie. Rekordów będzie gdzieś 10k na dzień dobry, standardowo
    dziennie przyrastać będzie do 500 rekordów.

    Mam 2 przypadki replikacji:
    1) replikacja z nową wersją bazy (instalka nowej wersji programu)
    2) replikacja z bazami mobilnymi (na PC i smartfonach można dodawać nie
    zależnie dane do bazy które później muszą być synchronizowane)

    Mam taki pomysł:
    1) każda zainstalowana baza ma mieć ID 64bit generowane (nie
    sekwencyjne). Baza instalacyjna ma ID = 0
    2) ID rekordów we wszystkich tabelach bazi: unikalne, 64bit, generowane
    (nie sekwencyjne), ID Bazy i TimeStamp ostatniej modyfikacji (ID Bazy
    jest konieczne przy pierwszej replikacji, kiedy trzeba brać pod uwagę
    wszystko co nie wjechało z bazą instalacyjną)
    3) w bazie jest tabela "replikacja" z ID Bazy i datą ostatniej
    replikacji z tą bazą
    4) standardowo przy replikacji wybieram rekordy dodane, zmienione i
    usunięte po dacie ostatniej replikacji z daną bazą
    5) przy pierwszej replikacji pobieram tabelę "replikacja" bazy na
    smartfonie, sprawdzam czy się data zgadza z wersją na PC (baza musi mieć
    tą samą wersję) i pobieram wszystkie rekordy o ID bazy różne od 0.
    Podgrywam nowe rekordy na smartfon. Na koniec wrzucam odpowiednie
    rekordy z ID Bazy i datą do tablic "replikacja" na PC i smartfonie.


    Oczywistą wadą jest to, że każdy rekord w bazie będzie miał IDBazy z
    której pochodzi i będzie to wykorzystane tylko przy pierwszej
    replikacji. Jednak jest to konieczne bo ktoś może mieć pierwszą wersję
    bazy, dodać sobie jakieś rekordy ręcznie i aktualizować do drugiej
    wersji i dopiero potem replikować dane z PC. Gdyby nie było IDBazy i
    gdybym oparł się jedynie na dacie replikacji bazy 0 (instalacyjnej) to
    rekordy dodane ręcznie nie zostałyby replikowane.


    Pytanie:
    Czy macie lepszy pomysł jak zrobić replikację tej bazy?


    dzięki
    Szyk

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: