Abbiamo un'applicazione python che esegue una ricerca DFS sui dati in un database. In questo momento, i dati sono piccoli, quindi posso tenere tutto in un contenitore Python ma i dati cresceranno e potrebbe arrivare un momento in cui è impossibile tenere tutto nella RAM. D'altra parte, interrogare i dati dal database durante ogni iterazione non è una soluzione intelligente, vero?
Ma la domanda è più generale. La soluzione è molto probabilmente in qualche caching intelligente, ma non ho alcuna esperienza in questo.
Quali sono le tecniche di gestione dei dati di grandi dimensioni quando è necessario accedere frequentemente (ad esempio si sta eseguendo un algoritmo)?