Caching attivo (partizioni)
Il caching attivo fornisce funzionalità automatiche di creazione e gestione della cache MOLAP per gli oggetti OLAP. I cubi incorporano immediatamente le modifiche apportate ai dati nel database, in base alle notifiche ricevute dal database. L'obiettivo del caching attivo consiste nel fornire le prestazioni della modalità MOLAP standard, garantendo l'immediatezza e la semplicità di gestione offerte da ROLAP.
Un oggetto ProactiveCaching semplice è composto dalla specifica temporale e dalla notifica per la tabella. La specifica temporale definisce l'intervallo di tempo entro il quale eseguire l'aggiornamento della cache dopo la ricezione di una notifica di modifica. La notifica per la tabella definisce lo schema di notifica tra la tabella dati e l'oggetto ProactiveCaching.
La modalità di archiviazione OLAP multidimensionale (MOLAP) consente di ottimizzare il tempo di risposta alle query, ma comporta una certa latenza dei dati. La modalità di archiviazione OLAP relazionale (ROLAP) in tempo reale consente agli utenti di vedere immediatamente le ultime modifiche apportate in un'origine dei dati, ma comporta un notevole calo delle prestazioni rispetto alla modalità di archiviazione MOLAP perché non esistono riepiloghi precalcolati dei dati e perché i dati relazionali non sono ottimizzati per query di tipo OLAP. Se in un'applicazione è necessario consentire agli utenti di visualizzare dati recenti, ma si desidera anche usufruire dei vantaggi in termini di prestazioni offerti dalla modalità di archiviazione MOLAP, è possibile utilizzare un'opzione di SQL Server Analysis Services denominata caching attivo, soprattutto in combinazione con l'utilizzo di partizioni. Il caching attivo viene impostato in base alla partizione e in base alla dimensione. Le opzioni di caching attivo consentono di raggiungere un compromesso tra le prestazioni avanzate dell'archiviazione MOLAP e l'immediatezza dell'archiviazione ROLAP e supportano l'elaborazione automatica delle partizioni in caso di modifica dei dati sottostanti o in base a una pianificazione impostata.
Opzioni di configurazione del caching attivo
In SQL Server Analysis Services sono disponibili varie opzioni di configurazione del caching attivo che consentono di ottimizzare le prestazioni, ridurre al minimo la latenza e pianificare l'elaborazione. Le funzionalità del caching attivo semplificano il processo di gestione dell'obsolescenza dei dati. Le impostazioni di caching attivo determinano la frequenza con cui viene ricostruita la struttura OLAP multidimensionale, denominata anche cache MOLAP, se vengono eseguite query sullo spazio di archiviazione MOLAP obsoleto durante la ricostruzione della cache o sull'origine dei dati ROLAP sottostante e se la cache viene ricostruita in base a una pianificazione o in base alle modifiche apportate nel database.
Riduzione al minimo della latenza
Quando il caching attivo è impostato in modo da ridurre al minimo la latenza, le query utente eseguite su un oggetto OLAP vengono indirizzate allo spazio di archiviazione ROLAP o MOLAP a seconda che siano state apportate modifiche recenti ai dati e del modo in cui è stato configurato il caching attivo. Il motore query indirizza le query verso l'origine dei dati nello spazio di archiviazione MOLAP fino a quando non vengono apportate modifiche nell'origine dei dati. Per ridurre al minimo la latenza, dopo l'implementazione di modifiche in un'origine dei dati gli oggetti MOLAP nella cache possono essere eliminati e le query indirizzate allo spazio di archiviazione ROLAP mentre gli oggetti MOLAP vengono ricostruiti nella cache. Dopo la ricostruzione e l'elaborazione degli oggetti MOLAP, le query vengono indirizzate automaticamente allo spazio di archiviazione MOLAP. L'aggiornamento della cache può essere estremamente rapido per una partizione di piccole dimensioni, ad esempio per la partizione corrente che può essere limitata al giorno corrente.
Ottimizzazione delle prestazioni
Per ottimizzare le prestazioni riducendo al tempo stesso la latenza, è inoltre possibile utilizzare il caching senza eliminare gli oggetti MOLAP correnti. Le query in questo caso continuano a essere eseguite sugli oggetti MOLAP mentre i dati vengono letti ed elaborati in una nuova cache. Questa modalità di archiviazione consente di ottenere prestazioni migliori, ma è possibile che i dati restituiti dalle query non siano aggiornati durante la fase di creazione della nuova cache.
Vedere anche