Condividi tramite


Gestire il data warehouse di Service Manager

Per gestire il data warehouse, che viene usato principalmente per la creazione di report, è necessario eseguire attività di manutenzione sui processi del data warehouse. Ad esempio, è possibile visualizzare lo stato, sospendere e riprendere, impostare una pianificazione, abilitare e disabilitare le pianificazioni e risolvere i problemi relativi ai processi del data warehouse. È possibile eseguire tutte queste attività di manutenzione usando i cmdlet di Windows PowerShell. Inoltre, è possibile eseguire alcune di queste attività tramite la console di Service Manager.

Durante la distribuzione, il gruppo di gestione di Service Manager è stato registrato come descritto in Registrare il gruppo di gestione di Service Manager nella Guida alla distribuzione di Service Manager. In seguito a tale azione, la distribuzione del Management Pack è stata avviata e MPSyncJob è stata avviata. Non è consigliabile avviare o riprendere i processi del data warehouse fino al termine di MPSyncJob, come illustrato nel riquadro Processi data warehouse nella console di Service Manager.

Esistono sette processi del data warehouse eseguiti in diversi momenti per gestire il data warehouse, come indicato nella tabella seguente.

Lavoro di data warehouse Descrizione
MPSyncJob Questo processo sincronizza tutti i pacchetti di gestione dall'origine di Service Manager. Questi Management Pack definiscono il contenuto del data warehouse. Questo processo viene avviato non appena si registra il gruppo di gestione di Service Manager e il completamento dell'esecuzione iniziale richiede diverse ore.
DWMaintenance Questo processo esegue la manutenzione del data warehouse, ad esempio l'indicizzazione e l'aggiornamento delle statistiche. Questo processo verrà eseguito automaticamente al termine del processo MPSyncJob.
Entità (o pulitura) Le funzioni di pulitura in genere comportano attività nel data warehouse che rimuovono i dati in base a un periodo di tempo configurabile. Nota: per questa versione di Service Manager, le funzioni di pulitura vengono gestite come flusso di lavoro. Le impostazioni per questo processo non sono configurabili.
Estrazione Questo processo recupera i dati dal database di Service Manager. Il processo esegue una query sul database di Service Manager per cercare i dati delta dall'ultima esecuzione e scrive i nuovi dati nel database DWStagingAndConfig nel data warehouse. Esistono due processi di estrazione in Service Manager: uno per il gruppo di gestione di Service Manager e l’altro per il gruppo di gestione del data warehouse.
Trasformazione Questo processo accetta i dati non elaborati dall'area di gestione temporanea ed esegue le operazioni di pulitura, riformattazione e aggregazione necessarie per convertirli nel formato finale per i report. Questi dati trasformati vengono scritti nel database DWRepository.
Caricamento Questo processo esegue una query dei dati dal database DWRepository e li inserisce nel database DWDatamart. DWDatamart è il database utilizzato per tutte le esigenze di reporting degli utenti finali.

Pianificazione e frequenza dei lavori

La pianificazione di un lavoro definisce quando inizia. La frequenza si riferisce a quanto spesso il processo viene eseguito dopo l'avvio. Indipendentemente dalla pianificazione e dalla frequenza, un lavoro non viene eseguito a meno che non sia stata abilitata la pianificazione per quel lavoro. Ad eccezione del processo Entity (Grooming), ogni processo ha un'ora di inizio pianificata predefinita, ovvero mezzanotte. Nella tabella seguente sono elencate le impostazioni pianificate per l'ora di inizio, la frequenza e la pianificazione predefinita.

Lavoro di data warehouse Ora di inizio pianificata Frequenza Abilitata per impostazione predefinita?
MPSyncJob Mezzanotte Ogni ora
DWMaintenance Mezzanotte Ogni ora
Estrazione Mezzanotte Ogni 5 minuti
Trasformazione Mezzanotte Ogni 30 minuti
Caricamento Mezzanotte Ogni ora

In questa versione di Service Manager le funzioni di pulitura vengono gestite come flusso di lavoro. Le impostazioni per questo processo non sono configurabili.

Cmdlet di PowerShell

Il modulo Windows PowerShell di Service Manager contiene i cmdlet usati in questo scenario per gestire le funzioni del data warehouse nel server che ospita il data warehouse. È necessario eseguire tutti i cmdlet di Windows PowerShell come amministratore. Per visualizzare la Guida di Windows PowerShell, digitare il comando get-help , seguito dal nome del cmdlet per cui si desidera assistenza. Ad esempio, digitare get-help Set-SCDWJobSchedule.

Vengono usati i cmdlet di PowerShell seguenti:

Cmdlet di PowerShell Descrizione
Get-SCDWJobSchedule Visualizza la pianificazione per un lavoro del magazzino di dati.
Get-SCDWJob Visualizza lo stato per tutti i processi ricorrenti del data warehouse di Service Manager.
Get-SCDWMgmtGroup Mostra i dettagli per un gruppo di gestione registrato con il data warehouse.
Remove-SCDWMgmtGroup Rimuove un gruppo di gestione dal data warehouse.
Set-SCDWJobSchedule Imposta la programmazione per i processi del data warehouse.
Enable-SCDWJobSchedule Abilita una pianificazione dei processi del data warehouse.
Disable-SCDWJobSchedule Disabilita una pianificazione delle attività del data warehouse. Le pianificazioni dei processi sono disabilitate per impostazione predefinita.

Inizia con le attività di data warehouse

Quando ti registri al data warehouse di Service Manager, MPSyncJob viene avviato. L'esecuzione iniziale di questo lavoro può richiedere diverse ore. Al termine del processo, è possibile visualizzare due processi di estrazione elencati nel riquadro Processi data warehouse. Un processo di estrazione è elencato come Extract_nome del gruppo di gestione del data warehouse, e l'altro processo di estrazione è elencato come Extract_nome del gruppo di gestione di Service Manager. Quando vengono visualizzati entrambi questi processi di estrazione, si sa che l'esecuzione iniziale di MPSyncJob è stata completata e che è ora possibile procedere con le attività di manutenzione successive.

Distribuzione del modulo data warehouse

La distribuzione del modulo data warehouse in Service Manager viene avviata quando un server di gestione di Service Manager viene registrato in un server di gestione del data warehouse. Nelle sezioni riportate di seguito vengono descritte le parti, le funzioni e la pianificazione di un modulo.

La sincronizzazione del Management Pack è il processo mediante il quale il data warehouse rileva le classi e le relazioni presenti nei sistemi di origine. Questo processo è anche definito MPSync. Per ogni Management Pack che definisce una classe o una relazione, il data warehouse crea dei moduli con processi di estrazione per recuperare i dati da tale classe o relazione dalla rispettiva origine. Questi Management Pack e i processi associati vengono sincronizzati tra i sistemi.

Solo i Management Pack sigillati e i loro dati corrispondenti vengono sincronizzati nel data warehouse. Se si modifica un Management Pack, è necessario aumentare il numero di versione e non è possibile introdurre modifiche che potrebbero causare errori; in caso contrario, non sarà possibile importare il Management Pack. Ad esempio, non è possibile rimuovere classi, rimuovere proprietà o rimuovere relazioni. Analogamente, non è possibile modificare i tipi di dati in modi non supportati. Ad esempio, non è possibile modificare una proprietà stringa per diventare una proprietà numerica.

Per impostazione predefinita, il processo MPSync di Orchestration viene eseguito ogni 30 minuti.

È possibile che più origini facciano riferimento allo stesso Management Pack. La versione del sistema di origine deve essere la stessa versione o una versione superiore a quella del data warehouse, altrimenti la registrazione avrà esito negativo.

È possibile rimuovere i Management Pack dal data warehouse. Tuttavia, tenere presente quanto segue:

  • La rimozione dei Management Pack non comporta l'eliminazione dei dati dal data warehouse così come avvieli nel database di Service Manager; Viene invece eliminata la visualizzazione del database a cui agli utenti viene concesso l'accesso.

  • Se si reimporta un Management Pack dopo aver rimosso il Management Pack corrispondente, i dati cronologici vengono nuovamente esposti.

    Nota

    Solo i Management Pack sealed vengono sincronizzati da Service Manager al data warehouse. Un'eccezione sono gli elementi elenco, noti anche come enumerazioni. I gruppi o le code vengono sincronizzati al data warehouse, indipendentemente se si trovano in un pacchetto di gestione bloccato o non bloccato.

I Management Pack importati da Service Manager sono specifici di Service Manager e specifici del data warehouse. I Management Pack di Service Manager forniscono informazioni su ciò che il database di Service Manager è strutturato e i Management Pack del data warehouse determinano la struttura e i processi dei database del data warehouse.

Conservazione del data warehouse di Service Manager

Per impostazione predefinita, i dati vengono archiviati nel data warehouse per tre anni per le tabelle dei fatti e per un periodo illimitato per le tabelle di dimensioni e outrigger. Tuttavia, è possibile modificare il periodo di memorizzazione se si desidera conservare i dati più a lungo o eliminarli in modo più aggressivo.

Impostazioni di conservazione delle tabelle dei fatti

Esistono due tipi di impostazioni di conservazione nel data warehouse:

  • Globale: il periodo di conservazione globale per tutte le tabelle dei fatti nel database è impostato su tre anni per impostazione predefinita, che tutte le tabelle dei fatti create successivamente usano come impostazione di conservazione predefinita.
  • Singolo dato: il periodo di conservazione granulare per ogni singola tabella dei fatti usa l'impostazione globale di tre anni, a meno che non vengano modificati singolarmente.

Globale: il periodo di conservazione globale predefinito per i dati archiviati nel data warehouse di Service Manager è di tre anni, quindi tutte le tabelle dei fatti usano tre anni come impostazione di conservazione predefinita. Tutte le tabelle dei fatti create successivamente utilizzano questo valore come impostazione di memorizzazione singola al momento della creazione.

Singole tabelle dei fatti: le singole tabelle dei fatti ereditano il valore di conservazione globale al momento della creazione oppure è possibile personalizzarle in base a un valore diverso dall'impostazione globale predefinita. È possibile configurare singolarmente le tabelle dei fatti predefinite create durante l’installazione, con un valore di memorizzazione specifico, se necessario.

Utilizzare il cmdlet PowerShell Get-SCDWRetentionPeriod per ottenere il periodo di conservazione per una specifica tabella dei fatti all’interno di un database data warehouse specifico o il valore predefinito per le tabelle dei fatti all’interno del database. Per descrizioni dettagliate dei parametri disponibili e dell'utilizzo di esempio, vedere Get-SCDWRetentionPeriod.

Reimportare i pacchetti di gestione rimossi in precedenza

Durante lo sviluppo e il test dei Management Pack che contengono i report che accedono alle informazioni del data warehouse, potrebbe essere necessario rimuovere tali Management Pack e reimportarli successivamente. Tuttavia, dopo che un Management Pack è stato disinstallato dal data warehouse, se il nuovo Management Pack contiene gli stessi nomi di dimensioni, fatti o cubi con uno schema diverso dall'originale, è necessario eliminare manualmente la tabella delle dimensioni o dei fatti dai database DWRepository e DWDataMart e inoltre eliminare dal database di SQL Server Analysis Services (SSAS) tutti gli eventuali cubi che vi fanno riferimento.

Inoltre, se un cubo di dati fa riferimento a una dimensione o a un fatto, è necessario eliminare anche il Management Pack che contiene il cubo di dati, nonché il cubo stesso prima di disinstallare il nuovo Management Pack. Poiché Service Manager non rimuove la dimensione o la tabella dei fatti da DataSourceView e poiché le dimensioni non vengono rimosse dal database SSAS, è necessario eliminare manualmente le informazioni a cui fa riferimento un cubo di dati. In questa situazione si deve utilizzare SQL Server Management Studio per rimuovere tutti i cubi di dati personalizzati creati con il Management Pack da DWASDatabase prima di registrare o installare nuovamente un Management Pack aggiornato.

In generale, è consigliabile evitare di utilizzare lo stesso nome per dimensioni, fatti e cubi in schemi diversi. Service Manager non supporta questa condizione.

Abilitare o disabilitare le pianificazioni dei processi del data warehouse

Utilizzare la procedura seguente per abilitare la pianificazione per i processi ETL in base alle esigenze; è possibile utilizzare questa procedura per abilitare la pianificazione per uno dei processi del data warehouse. Per impostazione predefinita, le pianificazioni per i processi ETL (Extract, Transform e Load) sono abilitate. In questa versione di Service Manager è possibile abilitare le pianificazioni solo usando Windows PowerShell.

Per abilitare una pianificazione per un processo del data warehouse usando i cmdlet di Windows PowerShell, seguire questa procedura:

  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager 2016 e selezionare Shell di Service Manager.
  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager e selezionare Shell di Service Manager.
  1. Al prompt di Windows PowerShell immettere i comandi seguenti e quindi premere INVIO dopo ogni comando:

    Enable-SCDWJobSchedule -JobName Extract_<data warehouse management group name>
    
    Enable-SCDWJobSchedule -JobName Extract_<Service Manager management group name>
    
    Enable-SCDWJobSchedule -JobName Transform.Common
    
    Enable-SCDWJobSchedule -JobName Load.Common
    
  2. Immettere exit e quindi premere INVIO.

È possibile usare la procedura seguente per disabilitare la pianificazione per i processi ETL (Extract, Transform e Load). Tuttavia, è possibile usare questa procedura per disabilitare la pianificazione per qualsiasi processo del data warehouse. In questa versione di Service Manager è possibile disabilitare le pianificazioni solo usando i cmdlet di Windows PowerShell.

Arrestare e avviare un processo del data warehouse

È possibile avviare e interrompere i processi del data warehouse che sono in esecuzione nel Service Manager. Ad esempio, potrebbe essere necessario arrestare tutti i processi del data warehouse in esecuzione per assicurarsi che un aggiornamento della sicurezza al server di gestione del data warehouse non interferisca con i processi che potrebbero essere eseguiti. Dopo che il server è stato aggiornato e riavviato, è possibile riprendere tutti i processi del data warehouse. È possibile arrestare e avviare i processi usando la console di Service Manager o i cmdlet di Windows PowerShell. In questo esempio vengono eseguiti solo i processi Extract, Transform e Load (ETL).

Nota

Per informazioni sull'uso dei cmdlet di Windows PowerShell di Service Manager, vedere Configurare e usare i cmdlet di Service Manager per Windows PowerShell.

Arrestare e avviare i processi del data warehouse usando la console di Service Manager

Per arrestare e avviare i processi del data warehouse usando la console di Service Manager, seguire questa procedura:

  1. Nella console di Service Manager selezionare Data Warehouse.
  2. Espandere Data Warehouse e selezionare Lavori data warehouse.
  3. Nel riquadro Processi data warehouse selezionare un processo in esecuzione e selezionare Sospendi nell'elenco Attività.
  4. Ripetere il passaggio precedente per ogni processo del data warehouse.
  5. Per riprendere ciascun processo, selezionare un processo arrestato nel riquadro Processi Data Warehouse e selezionare Riprendi nell'elenco Attività.

Per arrestare tutti i processi del data warehouse usando i cmdlet di Windows PowerShell, seguire questa procedura:

  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager 2016 e selezionare Shell di Service Manager.
  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager e selezionare Shell di Service Manager.
  1. Al prompt di Windows PowerShell immettere i comandi seguenti e quindi premere INVIO dopo ogni comando:

    Stop-SCDWJob-JobName Extract_<data warehouse management group name>
    
    Stop-SCDWJob -JobName Extract_<Service Manager management group name>
    
    Stop-SCDWJob -JobName Transform.Common
    
    Stop-SCDWJob -JobName Load.Common
    
  2. Digitare exit e quindi premere INVIO.

Pianificare un'attività del data warehouse in Service Manager

È possibile usare la procedura seguente per pianificare un'attività del data warehouse in Service Manager.

È possibile usare questa procedura in uno scenario in cui è stata definita una pianificazione per i processi del data warehouse in Service Manager. Si vuole modificare la pianificazione per i processi del data warehouse per definire finestre di manutenzione standard per il database di Service Manager e per il data warehouse. Usare il cmdlet Set-SCDWJobSchedule per pianificare i processi del data warehouse. La Set-SCDWJobSchedule -ScheduleType Weekly combinazione di cmdlet e parametri consente l'esecuzione dei processi solo nei giorni specificati. Ad esempio, i comandi seguenti definiscono una pianificazione giornaliera o settimanale:

Set-SCDWJobSchedule -JobName Transform.Common -ScheduleType Daily -DailyFrequency  01:00:00 -DailyStart 06:00
Set-SCDWJobSchedule -JobName Transform.Common -ScheduleType Weekly -WeeklyFrequency Tuesday, Thursday -WeeklyStart 06:00

Nota

Per eseguire i cmdlet di Windows PowerShell, i criteri di esecuzione devono essere impostati su RemoteSigned.

Nella procedura seguente viene configurata una pianificazione per l'esecuzione del processo Transform ogni 45 minuti, a partire dalle 2:00 del mattino. Tuttavia, è possibile modificare i comandi per impostare una pianificazione personalizzata.

Per configurare una pianificazione per i processi del data warehouse, seguire questa procedura:

  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager 2016 e selezionare Shell di Service Manager.
  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager e selezionare Shell di Service Manager.
  1. Al prompt di Windows PowerShell digitare il comando seguente e quindi premere INVIO.

    Set-SCDWJobSchedule -JobName Transform.Common -ScheduleType Daily -DailyFrequency 00:45:00 -DailyStart 02:00
    

Elaborare tutte le dimensioni nel data warehouse

È possibile elaborare tutte le dimensioni nel data warehouse in un'unica operazione usando i cmdlet di Windows PowerShell, anziché elaborare singolarmente ogni dimensione. Nel server che ospita SQL Server Analysis Services (SSAS), usare lo script di Windows PowerShell seguente. Assicurarsi di specificare il nome completo del server. È possibile immettere ogni comando separatamente oppure salvarli tutti come file di script di Windows PowerShell (ps1) e quindi eseguire lo script.

Prima di poter usare i cmdlet di Service Manager, è necessario configurare la shell di Service Manager. Per informazioni sulla configurazione della shell di Service Manager, vedere Configurare e usare i cmdlet di System Center Service Manager per Windows PowerShell.

Elaborare tutte le dimensioni usando i cmdlet

  • Copiare e incollare i seguenti frammenti di codice al prompt della shell di Service Manager.

    [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.AnalysisServices") > $NULL
    
    $Server = New-Object Microsoft.AnalysisServices.Server
    $Server.Connect("<FullyQualifiedServerName>")
    $Databases = $Server.Databases
    $DWASDB = $Databases["DWASDataBase"]
    $Dimensions = New-Object Microsoft.AnalysisServices.Dimension
    $Dimensions = $DWASDB.Dimensions
    
    foreach ($Dimension in $Dimensions){$Dimension.Process("ProcessFull")}
    

Visualizzare la cronologia dei processi del data warehouse

La cronologia dei processi del data warehouse viene raccolta man mano che vengono eseguiti in Service Manager. È possibile visualizzare questa cronologia per determinare per quanto tempo un processo è stato eseguito o per determinare l'ultima volta che il processo è stato eseguito correttamente. Quando si visualizza la cronologia dei processi del data warehouse, viene visualizzato il numero di voci specificate usando il parametro NumberOfBatches . Utilizzare la procedura seguente per visualizzare le ultime cinque voci nella cronologia di un processo del data warehouse.

Visualizzare le ultime cinque voci nella cronologia dei processi del data warehouse

Per visualizzare le ultime cinque voci nella cronologia dei processi del data warehouse, seguire questa procedura:

  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager 2016 e selezionare Shell di Service Manager.
  1. Nel computer che ospita il server di gestione del data warehouse selezionare Start, scegliere Tutti i programmi, selezionare Microsoft System Center, selezionare Service Manager e selezionare Shell di Service Manager.
  1. Immettere il comando seguente e quindi premere INVIO.

    Get-SCDWJob -NumberOfBatches 5
    
  2. Immettere exit e quindi premere INVIO.

Visualizzare lo stato di un processo del data warehouse

È possibile utilizzare le procedure seguenti per visualizzare lo stato di un processo del data warehouse in Service Manager per determinare se un processo è in esecuzione, arrestato o non riuscito.

Per visualizzare lo stato di un processo del data warehouse tramite la console di Service Manager, seguire questa procedura:

  1. Nella console di Service Manager selezionare Data Warehouse.
  2. Nel riquadro Data Warehouse, espandere Data Warehouse e selezionare Processi del Data Warehouse.
  3. Nel riquadro Data Warehouse Jobs, esaminare l'elenco dei processi per verificare il loro stato.

Risoluzione dei problemi di un processo del data warehouse in Service Manager

In Service Manager possono verificarsi problemi relativi ai processi del data warehouse. Al termine della procedura guidata di registrazione del Data Warehouse e una volta reso disponibile il reporting nella console di Service Manager, è possibile avviare l'esecuzione dei report. Se, ad esempio, il report di gestione degli eventi imprevisti eseguito non mostra i dati aggiornati, è possibile usare i cmdlet di Windows PowerShell per risolvere il problema.

Puoi usare la prima procedura per determinare se un processo non è riuscito tramite i cmdlet di Windows PowerShell e valutare eventuali messaggi di errore generati dal processo.

La seconda procedura può essere usata per modificare il periodo di timeout del processo di trasformazione predefinito. Se noti che il processo di trasformazione del data warehouse non viene completato correttamente, questo potrebbe essere dovuto al periodo di timeout predefinito di 3 ore per il processo che sia stato superato. Ciò può verificarsi perché un volume elevato di dati viene trasformato nel data warehouse. Per verificare che ciò accada effettivamente, è possibile visualizzare il Visualizzatore eventi nel magazzino di dati in cui i messaggi del tipo: Timeout scaduto. Periodo di timeout trascorso prima del completamento dell'operazione o il server non risponde. possono essere visti per un modulo. Ad esempio, è possibile che venga visualizzato il messaggio precedente per il modulo TransformEntityRelatesToEntityFact. Per risolvere il problema in questo caso, è possibile impostare il periodo di timeout più lungo del valore predefinito di 10800 secondi.

Per risolvere i problemi relativi ai processi del data warehouse usando i cmdlet di Windows PowerShell, seguire questa procedura:

  1. Nel computer che ospita il server di gestione del data warehouse avvia Windows PowerShell.

  2. Immettere il comando seguente e quindi premere INVIO.

    Get-SCDWJob
    
  3. Esaminare l'output e individuare qualsiasi processo con stato Non riuscito .

  4. Immettere il comando seguente e quindi premere INVIO. Nel comando, specificare l'attività del data warehouse fallita come valore del parametro JobName.

    Get-SCDWJobModule -JobName Transform.Common
    
  5. Nel risultato, individuare uno stato di "Failed", quindi esaminare la colonna Error Message per ulteriori informazioni sulle ragioni per cui il job del data warehouse non è riuscito.

  6. Quando si è pronti a ripetere il processo non riuscito, nella console di Service Manager selezionare Data Warehouse.

  7. Espandere Data Warehouse e selezionare Lavori data warehouse.

  8. Nel riquadro Processi del Data Warehouse selezionare il processo non riuscito nell'elenco e selezionare Riprendi nell'elenco Attività.

Passaggi successivi