By 28 Novembre 2020

Impostare le statistiche di aggiornamento di SQL Server mediante piani di manutenzione del database

Query Optimizer di SQL Server utilizza le statistiche per creare un piano di esecuzione ottimizzato. Queste statistiche contengono l’istogramma che contiene informazioni sulla distribuzione dei dati, il numero di righe e la densità dei dati. SQL Server crea e aggiorna automaticamente le statistiche in base a una soglia predefinita. Le statistiche obsolete si traducono in piani di esecuzione errati che influiscono sulle prestazioni delle query e su un maggiore utilizzo delle risorse. In questo articolo, esploreremo in dettaglio le opzioni del piano di manutenzione di SQL Server per le statistiche di aggiornamento di SQL Server.

Diamo una rapida panoramica della visualizzazione delle statistiche. Espandi una tabella e vedrai cartelle diverse per indici e statistiche. Nello screenshot seguente, vediamo due tipi di statistiche.

  • Statistiche dell’indice: per ogni indice, abbiamo una statistica corrispondente. Il suo nome è anche simile al nome dell’indice
  • Statistiche create automaticamente: SQL Server crea automaticamente le statistiche in base alle colonne nel predicato della query, ad esempio la clausola where. Queste statistiche iniziano sempre con _WA. È un codice di due lettere per Washington negli Stati Uniti

Creiamo una statistica utente nella tabella Cliente nelle colonne [AccountNumber] e [ModifiedTable]. Per creare, fare clic con il pulsante destro del mouse su Statistiche e nuove statistiche.

Assegna un nome alla statistica utente e aggiungi le colonne delle statistiche utilizzando il pulsante Aggiungi. Qui, abbiamo aggiunto le colonne [AccountNumber] e [ModifiedTable].

Nel caso di più colonne, possiamo anche modificare l’ordine delle colonne utilizzando i pulsanti “Sposta in alto” e “Sposta in basso”. Fare clic su Ok e crea le statistiche utente per te

Creare un piano di manutenzione per SQL Server Update Statistics

Esploriamo come creare un piano di manutenzione per le statistiche di aggiornamento di SQL Server insieme a varie configurazioni. Connettiti all’istanza SQL in SSMS, espandi Gestione e fai clic con il pulsante destro del mouse su Piani di manutenzione .

Avvia la procedura guidata del piano di manutenzione. Nella pagina di avvio, fornisce una breve introduzione delle attività di amministrazione del database di routine disponibili con un piano di manutenzione. Se vuoi saltare questa pagina introduttiva, possiamo mettere un segno di spunta su – Non mostrare più questa pagina iniziale.

Fare clic su Avanti e selezionare le proprietà del piano di manutenzione. In questa pagina, fornire le seguenti informazioni.

  • Nome: assegnare un nome a questo piano di manutenzione. È necessario fornire un nome corretto per identificarlo rapidamente nel caso in cui si dispongano di più piani di manutenzione
  • Descrizione: è un campo opzionale. È possibile aggiungere una breve descrizione del piano di manutenzione per riferimento ad altri DBA
  • Esegui come: è l’account del servizio nel contesto in cui SQL Server esegue il piano di manutenzione. Per impostazione predefinita, è l’account del servizio Agente SQL Server. È inoltre possibile creare un account proxy per eseguire un lavoro dell’agente. Per questo articolo, rimaniamo con l’account del servizio agente predefinito

Pianificazione: potremmo combinare più attività in un unico piano di manutenzione. In questo caso, potremmo non volere un’unica pianificazione per tutta la manutenzione. Ad esempio, non si desidera che il processo di backup completo del database venga avviato contemporaneamente all’attività di manutenzione dell’indice. In questo caso, è possibile selezionare pianificazioni separate per ciascuna attività

In questo articolo, ci concentriamo sull’attività di aggiornamento delle statistiche di SQL Server in modo da poter utilizzare l’opzione – Pianificazione singola per l’intero piano

Attualmente, vediamo la pianificazione come non pianificata (su richiesta). Fare clic su Modifica e selezionare una pianificazione del lavoro secondo le proprie esigenze.

Nel passaggio successivo, seleziona l’attività di manutenzione. Dopo averlo selezionato, si ottiene una breve descrizione che consente a Query Optimizer di esprimere giudizi migliori sulle strategie di accesso ai dati

Nella fase successiva, possiamo selezionare l’ordine delle attività di manutenzione. Abbiamo solo un’attività in questo piano di manutenzione, quindi le opzioni Sposta su e Sposta giù sono disabilitate

Fare clic su Avanti e definire le opzioni dell’attività Aggiorna statistiche. Database: selezionare i database per i quali si desidera aggiornare le statistiche di SQL Server

  • Puoi scegliere tra le seguenti opzioni:
    • Tutti i database
    • Database di sistema
    • Tutti i database degli utenti (esclusi i database di sistema)
    • Database specifici

    Se selezioni database specifici, ti fornisce opzioni per approfondire ulteriormente e specificare tabelle per aggiornare le statistiche. Abbiamo specificato tutti i database, quindi non abilita la finestra di selezione degli oggetti

  • Aggiorna: qui possiamo selezionare le operazioni di aggiornamento delle statistiche dai seguenti valori
    • Tutte le statistiche esistenti
    • Solo statistiche di colonna
    • Solo statistiche dell’indice

    Di solito, aggiorniamo tutte le statistiche esistenti utilizzando l’attività di manutenzione del database

  • Tipo di scansione: è un’opzione di configurazione fondamentale. Qui, selezioniamo un’analisi completa o una percentuale di esempio per le statistiche di aggiornamento di SQL Server. È necessario eseguire regolarmente l’aggiornamento della scansione completa in modo che Query Optimizer disponga di informazioni accurate sulla distribuzione dei dati e prepari un piano di esecuzione ottimizzato. È un’opzione simile per l’aggiunta di una clausola FULL SCAN nel comando UPDATE STATISTICS

Nella pagina successiva, seleziona l’opzione di consegna del rapporto sul piano di manutenzione. È necessario selezionare almeno un’opzione per analizzare i registri del piano di manutenzione, soprattutto in caso di guasto. Se si seleziona un report di posta elettronica, viene visualizzato l’operatore di posta elettronica del database configurato nell’istanza SQL.

Fare clic su Fine e mostra l’avanzamento, lo stato di ciascuna attività.

Sql Server statistiche , Maintenance Plan Sql Server, Sql Server Agent statistiche, statistiche Sql Sever Agent

Posted in: Sql Server

About the Author:

shared on wplocker.com