Istnieje kilka różnych podejść do rozważenia:
1) Użyj produktu bazodanowego, który implementuje multi-master lub MVCC (Multiversion Concurrency Control) i działa zarówno na Androidzie, jak i na Twoim serwerze. Kilka przykładów znajduje się na stronie Wikipedii MVCC , przy czym CouchDB jest powszechnym rozwiązaniem. Istnieje TouchDB-Android port, który jest zoptymalizowany do działania w systemie Android i obsługuje replikację do CouchDB.
2) Twoje wymagania mogą być na tyle proste (lub unikalne), że uzasadniają wprowadzenie własnego rozwiązania. Typowym rozwiązaniem byłoby użycie SQLite na Androidzie i synchronizowanie informacji ze zdalnym serwerem przez (prawdopodobnie RESTful) API.
Nie jest konieczne używanie tego samego rozwiązania bazodanowego zarówno na urządzeniu mobilnym, jak i na serwerze, ale użycie podobnego schematu i języka zapytań prawdopodobnie zapewni ci rozsądek.