Condividi tramite


Archiviazione e sincronizzazione del contenuto del server di report con i database di SharePoint

Quando si configura un server di report per l'esecuzione in modalità di integrazione con SharePoint, il server di report utilizza sia i database del contenuto e di configurazione di SharePoint sia i propri database interni per l'archiviazione del contenuto e dei metadati.

Reporting Services e Windows SharePoint Services sono applicazioni server distribuite che consentono di eseguire servizi e database interni su computer distinti. In ogni server vengono archiviati tipi di informazioni diversi. Per le attività di archiviazione interna di entrambi i server vengono utilizzati più database relazionali di SQL Server. La conoscenza del tipo di informazioni archiviato in ognuno di essi aiuta a comprendere la modalità di interazione dei server e fornisce le informazioni di base necessarie per determinare la modalità di allocazione dello spazio su disco e pianificare i backup dei database.

Nella figura seguente viene illustrato il set di database completo utilizzato in una distribuzione di server di report eseguita in modalità di integrazione con SharePoint.

Diagramma di database

Database di configurazione di SharePoint

Per ogni applicazione Web di SharePoint è presente un database di configurazione in cui sono archiviate le impostazioni dell'applicazione. Le impostazioni di configurazione specificate nello strumento Amministrazione centrale di SharePoint durante la configurazione di un'istanza di Windows SharePoint Services o Office SharePoint Server per l'integrazione con un server di report vengono archiviate in tale database. Tali impostazioni includono l'URL del server di report, informazioni sugli account utilizzati dal servizio del server di report e sul provider di autenticazione utilizzato sul server e impostazioni a livello di sito che attivano o limitano la registrazione o la cronologia dei report. Per ulteriori informazioni, vedere Configurazione di Reporting Services per l'integrazione con SharePoint 3.0.

Database del contenuto di SharePoint

Per ogni applicazione Web di SharePoint sono presenti uno o più database del contenuto in cui sono archiviati i documenti e le proprietà accessibili e gestibili tramite il server. Per un server di report configurato per la modalità di integrazione con SharePoint, il database del contenuto di SharePoint costituisce la posizione di archiviazione primaria per i report pubblicati, i modelli di report, le origini dei dati condivise, le risorse, le proprietà e le autorizzazioni.

Database del server di report e database temporaneo del server di report

In ogni distribuzione con scalabilità orizzontale o istanza del server di report viene utilizzato un singolo database del server di report per l'archiviazione dei dati persistenti. I dati temporanei sono isolati in un database secondario. È pertanto possibile creare pianificazioni di backup diverse e impostare proprietà di aumento delle dimensioni specifiche per ognuno di essi. Per ogni database del server di report è presente un database temporaneo in cui vengono archiviati i dati delle sessioni e gli snapshot temporanei creati esclusivamente per migliorare le prestazioni durante l'elaborazione delle sottoscrizioni, la generazione interattiva dei report e il caching dei report.

I dati archiviati in un database del server di report includono pianificazioni, sottoscrizioni e snapshot per la cronologia dei report o l'esecuzione dei report. Nel database del server di report vengono inoltre conservate copie interne dei file di contenuto archiviati nel database del contenuto di SharePoint. L'archiviazione di copie interne consente di migliorare le prestazioni riducendo al minimo la necessità di inviare più volte uno stesso file al server di report per l'elaborazione. Per garantire che i report, i modelli e le origini dei dati siano identici, vengono eseguite operazioni di verifica e sincronizzazione.

Nota importanteImportante

Il database di un server di report può supportare operazioni in modalità nativa o in modalità di integrazione con SharePoint, ma non entrambe. Se si crea un database del server di report per supportare la modalità di integrazione con SharePoint, in seguito non sarà possibile convertire o eseguire la migrazione di tale database per l'esecuzione con un'istanza del server di report in modalità nativa. Il database del server di report contiene metadati specifici della modalità in uso (ovvero, la posizione degli elementi e informazioni sulle autorizzazioni), che non sono compatibili con l'altra modalità.

Connessioni di database, autorizzazioni e account di accesso

Per configurare un server di report o un'istanza di Office SharePoint Server o Windows SharePoint Services è necessario essere un amministratore locale o un membro del gruppo Administrators predefinito del computer.

Per il servizio del server di report è necessaria una connessione di database al database del contenuto di SharePoint, ma non al database di configurazione. Le impostazioni per l'integrazione con il server di report vengono archiviate nel database di configurazione utilizzando l'account di accesso e le autorizzazioni create per gli utenti dello strumento Amministrazione centrale durante l'installazione di Windows SharePoint Services.

Viceversa, il servizio del server di report crea, elimina e aggiorna elementi e proprietà nel database del contenuto di SharePoint. Le informazioni di connessione, l'account di accesso e le autorizzazioni per il database vengono configurati durante l'impostazione dell'account attendibile in Amministrazione centrale.

L'istanza di Office SharePoint Server o Windows SharePoint Services non aggiunge o recupera dati nei database del server di report. Tutte le richieste vengono indirizzate al server di report, che a sua volta accede ai database del server di report utilizzando le proprie impostazioni di connessione.

Le autorizzazioni per la visualizzazione dei singoli elementi e l'esecuzione di operazioni specifiche su un server di report vengono gestite dall'istanza di Office SharePoint Server o Windows SharePoint Services. L'autenticazione e i controlli di protezione vengono eseguiti prima dell'invio della richiesta al server di report. Insieme a ogni richiesta viene inviato un token di protezione che include informazioni sulle autorizzazioni e determina pertanto se la richiesta verrà soddisfatta o meno.

Manutenzione dei database

Nel server di report vengono automaticamente eseguite attività di manutenzione di routine per rimuovere dal database del server di report la cronologia dei report, le pianificazioni, le sottoscrizioni e gli snapshot di report rimasti orfani perché i report corrispondenti sono stati eliminati dal sito di SharePoint. Gli elementi orfani sono quelli che non dispongono più di un'associazione con un elemento padre in un database del contenuto di SharePoint.

Il server di report verifica ogni giorno che gli elementi archiviati nel database del server di report siano associati a report esistenti in un database del contenuto di SharePoint. Per modificare la frequenza del processo di pulizia, aggiungere l'impostazione di configurazione DailyCleanupMinuteofDay nel file RSReportServer.config. Il processo di pulizia viene eseguito in background e utilizza le informazioni di pianificazione definite nei file di configurazione. Non può essere eseguito su richiesta.

Se l'istanza di Office SharePoint Server o Windows SharePoint Services non è disponibile, ad esempio perché il server non è in linea, non verrà eseguita alcuna operazione di pulizia. Se si ripristina un database del server di report contenente dati non aggiornati che non corrispondono agli elementi attualmente archiviati nel database di SharePoint, tali dati verranno rimossi alla successiva esecuzione del processo di pulizia.

Il processo di pulizia elimina solo il contenuto, ma non sincronizza o aggiorna gli elementi del server di report archiviati nel database del contenuto di SharePoint. Per impostazione predefinita, il processo di pulizia viene eseguito ogni notte alle 2.00.

Per specificare un'ora diversa, è necessario aggiungere DailyCleanupMinuteofDay al file RSReportServer.config e impostare un altro valore. Ad esempio:

<Add Key=" DailyCleanupMinuteOfDay " Value="120" />

Questa chiave non è presente nel file RSReportServer.config per impostazione predefinita. Per aggiungerla, copiare la voce precedente e inserirla dopo l'elemento Configuration, insieme agli altri elementi Add di tale sezione. È necessario specificare un valore in minuti a partire della mezzanotte. Il valore minimo è 30 minuti e il massimo è 1380 minuti (23 ore).

Operazioni di sincronizzazione e verifica

Per garantire che le copie conservate per l'elaborazione interna nel server di report sono identiche agli elementi originali della raccolta di SharePoint, prima di elaborare una richiesta il server di report esegue alcune operazioni di sincronizzazione e verifica degli elementi.

La sincronizzazione è un processo che crea, aggiorna o elimina una copia interna di un elemento archiviato nel database del server di report. Il server di report recupera elementi e proprietà da una raccolta di SharePoint e li archivia nel database del server di report. Il confronto è basato sulle informazioni contenute nel timestamp, che è archiviato in formato UTC. Se il server di report e il sito o la farm di SharePoint si trovano in aree geografiche con fusi orari diversi, al momento dell'archiviazione il timestamp verrà convertito nell'ora locale del server.

La verifica è l'operazione che determina se è necessario eseguire o meno la sincronizzazione. Se il timestamp dell'elemento originale è identico a quello della copia interna, la sincronizzazione non verrà eseguita.

Processo di sincronizzazione degli elementi

La sincronizzazione viene eseguita dal server di report. Si tratta di un processo in background attivato automaticamente ogni volta che viene creato, aggiornato o recuperato un elemento. Le operazioni di sincronizzazione non possono essere gestite, configurate o controllate esplicitamente. L'ambito della sincronizzazione è determinato dalle specifiche richieste di creazione o aggiornamento degli elementi. Non viene eseguita alcuna operazione di sincronizzazione globale che allinea tutti gli elementi e le proprietà contemporaneamente. Per sincronizzare manualmente un'origine dei dati condivisa, un report o un modello di report, è necessario eseguirlo.

Se un determinato elemento non esiste nel database del server di report oppure l'elemento nel database del server di report è meno recente dell'elemento corrispondente nella raccolta di SharePoint, le copie interne di tale elemento verranno create o aggiornate. Viene creata una copia interna in risposta agli eventi seguenti:

  • Richiesta di un report o modello di report. Viene creata una copia interna del report o modello di report e di ogni origine dei dati condivisa a cui viene fatto riferimento da almeno uno di questi elementi.

  • Pubblicazione di un report o modello di report da Progettazione report o Progettazione modelli a una raccolta di SharePoint. Dopo l'aggiunta dell'elemento al database del contenuto di SharePoint viene creata una copia del report o modello di report, che viene aggiunta al database del server di report. Se insieme al modello di report viene pubblicata anche un'origine dei dati condivisa, la copia interna di tale origine dei dati condivisa non verrà creata finché non sarà necessario utilizzarla.

Se si utilizza l'azione Carica su un sito di SharePoint, la creazione della copia interna nel database del server di report verrà posticipata. Per ogni elemento del server di report caricato, la copia interna viene creata quando tale elemento viene richiesto.

Non viene creata alcuna copia interna dei file di immagine esterni utilizzati nei report, né delle pianificazioni, delle sottoscrizioni o degli snapshot archiviati esclusivamente nel database del server di report.

Informazioni su autorizzazioni e impostazioni di configurazione

Anche se le impostazioni di configurazione devono essere definite correttamente su entrambi i server, sono escluse dai processi di sincronizzazione. Se si modifica l'account di servizio del server di report, l'URL, il tipo di autenticazione o la modalità di esecuzione del server di report in modo che quest'ultimo venga eseguito in modalità nativa anziché in modalità integrata SharePoint, sarà necessario aggiornare esplicitamente le impostazioni di configurazione del server nello strumento Amministrazione centrale di SharePoint o nello strumento di configurazione di Reporting Services.

Il server di report utilizza le autorizzazioni impostate sul sito o la farm di SharePoint. Non viene eseguita alcuna sincronizzazione delle autorizzazioni tra un sito o una farm di SharePoint e un server di report.

Disponibilità del server ed errori di sincronizzazione

Per la corretta sincronizzazione di elementi, proprietà e operazioni è necessario che tutti i computer e le connessioni che costituiscono la distribuzione siano disponibili e operativi. La sincronizzazione non verrà eseguita quando si verificano le condizioni seguenti:

  • I server o i database back-end vengono portati non in linea o non sono disponibili per altri motivi.

  • Le informazioni di connessione relative a uno qualsiasi dei server o dei database back-end non sono più valide, ad esempio perché un URL è stato modificato in modo non corretto oppure è stato modificato l'account o la password di un servizio.

  • Le informazioni di connessione vengono modificate senza prima portare non in linea i server, compromettendo la temporizzazione e il flusso delle operazioni sincronizzate.

Se non è possibile eseguire la sincronizzazione perché i server non sono in grado di connettersi tra loro o ai relativi database back-end, il server di report riconcilierà i metadati o il contenuto non sincronizzato dopo il ripristino della connessione e quando viene richiesto un report, un'origine dei dati condivisa, una sottoscrizione o un modello di report specifico.

Se la sincronizzazione non riesce, verrà generato l'errore rsItemNotFound, per segnalare che l'elemento desiderato non è stato trovato in una raccolta di SharePoint.