Diciamo che ho un'applicazione che cambia continuamente i dati. Le modifiche sono così frequenti che in pratica è necessario aggiornare i dati ogni volta che si apre una schermata e si continua ad aggiornarla. Vale la pena implementare un database locale per tale applicazione?
L'implementazione del database in tale applicazione sembra ridondante perché:
- La struttura dei dati potrebbe essere complessa (array, parametri facoltativi e così via) e quindi usare i cursori non è un modo molto efficiente per passarci intorno
- I dati non devono essere archiviati per molto tempo
- Se ottimizzato per richiedere i dati filtrati in determinate schermate (per ridurre il traffico di dati), è necessario assicurarsi di filtrare gli aggiornamenti del database in modo tale che i dati non filtrati (che potrebbero essere utilizzati da altri schermi) non siano interessati. Non così difficile ma ancora qualcosa da sviluppare (e testare)
Tuttavia, l'implementazione del database locale potrebbe significare una navigazione più veloce. Ma ancora, non è vero se le richieste di servizio sono ottimizzate per evitare l'invio di dati ridondanti.
Applicazioni come Play Store, Facebook, Google+ utilizzano database locali per replicare le strutture di dati archiviate nel database remoto? Voglio solo sapere qual è la pratica comune per lo sviluppo di applicazioni pesantemente basate sui servizi web.