Sto eseguendo una piccola app Web utilizzando la struttura lucida di R. Lo strumento non fa molto. Sta semplicemente filtrando i frame di dati con determinati parametri dall'interfaccia utente. Il problema che ho ora è il seguente. Se un utente accede all'app tramite http, impiega molto tempo per avviare l'app. Poiché i dati, che carico nello global.R
, sono piuttosto grandi (~ 5 GB). Dopo un avvio iniziale, l'App funziona senza problemi, anche quando si riaccede in un dato momento (l'app sembra essere completamente in memoria, per alcuni minuti). Dato che ho abbastanza memoria disponibile e i miei dati non cambiano in base all'interazione dell'utente, mi chiedo se potrei tenere l'app completa in memoria. È possibile forzare questo? Il mio server è in esecuzione centOS 6. Anche il problema non è il file system, l'hard disk, ecc. - Ho creato un ram disk per caricare i dati, ma l'aumento delle prestazioni è marginale. Quindi il collo della bottiglia sembra essere R, durante l'elaborazione dei dati.R Shiny in Memory Application o noSQL
Ora ho due idee, che possono superare il problema.
- Proprio come ho già detto, è possibile mantenere l'app completa in memoria?
- Non salvare i dati come oggetti R, utilizzare invece un DB noSQL veloce ad es. Redis che è in memoria
maggio uno di voi ha qualche esperienza quando si carica i dati più grandi. Sarei grato se potesse iniziare una discussione. Se è possibile, vorrei evitare il software esterno, come Redis, per mantenere tutto il più semplice possibile.
Con tutto il meglio,
Mario