DetailPage-MSS-KB

Microsoft Knowledge Base

Identificativo articolo: 2806535 - Ultima modifica: mercoledì 6 febbraio 2013 - Revisione: 2.0

 

In questa pagina

Sommario

Il Microsoft SQL Server max degree of parallelism Opzione di configurazione (MAXDOP) controlla il numero di processori utilizzati per l'esecuzione di una query in un piano parallelo. Questa opzione determina le risorse di elaborazione e di thread utilizzate per gli operatori del piano di query che lavorano in parallelo. A seconda se SQL Server è impostato su un computer multielaborazione simmetrica (SMP), un computer di non-uniform memory access (NUMA) o processori Hyper-Threading abilitata, è necessario configurare il max degree of parallelism l'opzione in modo appropriato. In questo articolo vengono illustrati gli orientamenti generali che è possibile utilizzare per configurare il max degree of parallelism opzione per SQL Server quando si utilizza il sistema di sp_configure stored procedure.

I parametri di query Transact-SQL di Opzione (MAXDOP) possono eseguire l'override di max degree of parallelismopzione di sp_configure valore se la query viene specificata questa opzione. In SQL Server 2000, la sostituzione ha effetto solo se il valore è specificato l'hint è minore o uguale al valore di sp_configure . In SQL Server 2005 e versioni successive, l'override ha sempre effetto. In SQL Server 2008 e versioni successive, se il valore MAXDOP supera il valore è stato configurato con Resource Governor, il motore di database utilizza il valore di Resource Governor MAXDOP. Tutte le regole semantiche utilizzate con la max degree of parallelismopzione sono applicabili quando si utilizza l'hint per query MAXDOP. Le altre due opzioni che possono eseguire l'override o modificare l'impostazione MAXDOP sono i seguenti:
  • Soft NUMA
  • Parallela di indici

Informazioni

Nota. Il max degree of parallelism opzione di configurazione non limitare il numero di processori che utilizza SQL Server. Per configurare il numero di processori che utilizza SQL Server, utilizzare il maschera di affinità opzione di configurazione.

Attenersi alle seguenti indicazioni quando si configura il valore MAXDOP.

SQL Server 2005 e versioni successive

  • Per i server che utilizzano più di otto processori, utilizzare la seguente configurazione:
    MAXDOP = 8
  • Per i server che utilizzano un numero inferiore o otto processori, utilizzare la seguente configurazione:
    MAXDOP = 0 eN

    Nota. In questa configurazione,N rappresenta il numero di processori.
  • Per i server che hanno configurato NUMA, MAXDOP non deve superare il numero di CPU che vengono assegnati a ciascun nodo NUMA.
  • Per i server che ha attivato l'hyperthreading, il valore MAXDOP non deve superare il numero di processori fisici.
  • Per i server con NUMA configurato e attivato l'hyperthreading, non deve superare il valore MAXDOP numero di processori fisici per ogni nodo NUMA.
Nota. Seguire le stesse indicazioni quando si imposta il max degree of parallelismopzione per i gruppi del carico di lavoro di Resource Governor.

Inoltre, il valore massimo di 8 menzionato in queste linee guida è applicabile per l'attività tipica di SQL Server e il sovraccarico per gli operatori di exchange vengono utilizzati nei piani di query parallele. È possibile variare il valore massimo, a seconda dei modelli di applicazione specifico e l'attività simultanea nell'istanza di SQL Server. Ad esempio, considerare quanto riportato di seguito:
  • Se si dispone di un numero estremamente ridotto di query in esecuzione contemporaneamente rispetto al numero di processori, è possibile impostare il valore MAXDOP su un valore più alto. Ad esempio, è possibile impostare il valore MAXDOP su 16.
  • Se è un dispone di un numero elevato di query in esecuzione contemporaneamente rispetto al numero di processori, è possibile impostare il valore MAXDOP su un valore inferiore. Ad esempio, è possibile impostare il valore MAXDOP su 4.
Nota. Qualsiasi valore, è considerare dovrà essere verificate attentamente contro l'applicazione specifica attività o il modello di query prima di implementare tale valore in un server di produzione.

SQL Server 2000 e versioni successive

Se SQL Server utilizza un piano seriale, verrà utilizzato un solo processore. Tuttavia, se SQL Server utilizza il parallelismo, deve utilizzare tutti i processori configurati (come determinato dalla configurazione di hint di query MAXDOP) per l'esecuzione di un piano parallelo. Ad esempio, se si utilizza MAXDOP = 0 su un server a 32 vie, SQL Server tenta di utilizzare tutti i 32 processori, anche se 7 processori è possibile eseguire il processo più efficiente rispetto a un piano seriale che utilizza un solo processore. Per questo motivo radicale se SQL Server utilizza il piano parallelo e non limitano l'hint per query MAXDOP su un valore massimo di 8, il tempo necessario per SQL Server per coordinare tutti i processori in un server di fascia alta supera i vantaggi dell'utilizzo di un piano parallelo.

L'impostazione MAXDOP si applica a ogni fase del piano. Ogni passaggio utilizza una CPU o il numero di CPU specificato da MAXDOP e mai nulla tra. Se i passaggi da eseguire in parallelo, il numero di thread utilizzati dalla query può superare l'impostazione MAXDOP.

Per la definizione di MAXDOP, vedere l'argomento "Massimo grado di parallelismo opzione" o "Grado di parallelismo" in SQL Server.

Per comprendere il funzionamento di parallelismo, vedere la sezione "Elaborazione parallela di Query" nell'argomento "Architettura del processore di Query" nella documentazione in linea di SQL Server.

Ulteriori informazioni

Per ulteriori informazioni sulle query parallele, visitare il seguente sito Web Microsoft Developer Network (MSDN):
Grado di parallelismo (http://msdn.microsoft.com/en-us/library/ms188611.aspx )
Per le informazioni sulle procedure consigliate quando si esegue un'istanza di SQL Server in computer con più di 64 CPU, vedere l'argomento della documentazione in linea di SQL Server seguente:
Procedure consigliate per l'esecuzione di SQL Server in computer con più di 64 CPU (http://msdn.microsoft.com/en-us/library/ee210547(SQL.105).aspx)
Per le istanze di SQL Server in esecuzione su processori abilitato hyperthreading, attenersi ai suggerimenti riportati nel seguente articolo della Microsoft Knowledge Base:
322385  (http://support.microsoft.com/kb/322385/ ) Supporto di SQL Server in un ambiente hyperthreading
Nota. Questa indicazione potrebbe non essere applicabile a chip del processore più recente, ad esempio quelli della famiglia Intel Nehalem.

Per informazioni sul numero di processori utilizzati da SQL Server e il numero di nodi NUMA riconosciuti da SQL Server, utilizzare la gestione dinamica delle visualizzazioni sys.dm_os_sys_info e sys.dm_os_nodes. Per ulteriori informazioni sull'impostazione MAXDOP applicato con Resource Governor, rivedere le informazioni in sys.dm_resource_governor_workload_groups la visualizzazione di gestione dinamica.

Per ulteriori informazioni su prodotti o strumenti automaticamente verificare questa condizione, l'istanza di SQL Server e le versioni del prodotto SQL Server, vedere la tabella riportata di seguito:
Riduci questa tabellaEspandi questa tabella
Software di regolaTitolo regolaDescrizione della regolaVersioni del prodotto con cui viene valutata la regola
SQL Server 2008 R2 Best Practice Analyzer (SQL Server 2008 R2 BPA)Grado di parallelismo non è impostata su valore consigliatoDi SQL Server 2008 R2 Best Practice Analyzer (SQL Server 2008 R2 BPA) fornisce una regola per rilevare le condizioni di cui il valore appropriato per il max degree of parallelismopzione non è configurato con il numero di CPU in un nodo NUMA e, inoltre, la configurazione del carico di lavoro di Resource Governor per MAXDOP. Di SQL Server 2008 R2 BPA supporta SQL Server 2008 e SQL Server 2008 R2.

Se si esegue lo strumento BPA e visualizzato un messaggio di avviso "Motore di Database - degree of parallelism non è impostata su valore consigliato", confrontare ilmax degree of parallelismvalore dell'opzione e il valore MAXDOP Resource Governor del carico di lavoro con i valori consigliati sono specificati nella sezione "Sommario" e "Informazioni".
SQL Server 2008, SQL Server 2008 R2
SQL Server 2012 Best Practice Analyzer (BPA di SQL Server 2012)Grado di parallelismo non è impostata su valore consigliatoSQL Server 2012 Best Practice Analyzer (BPA di SQL Server 2012) fornisce una regola per rilevare le condizioni di cui il valore appropriato per max degree of parallelismopzione non è configurato con il numero di CPU in un nodo NUMA e, inoltre, la configurazione del carico di lavoro di Resource Governor per MAXDOP.

Se si esegue lo strumento BPA e visualizzato un messaggio di avviso "Motore di Database - degree of parallelism non è impostata su valore consigliato", confrontare ilmax degree of parallelismvalore dell'opzione e il valore MAXDOP Resource Governor del carico di lavoro con i valori consigliati sono specificati nella sezione "Sommario" e "Informazioni".
SQL Server 2012

Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Express
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Express with Advanced Services
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Enterprise Evaluation
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Express with Advanced Services
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Express Edition with Advanced Services
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Enterprise Evaluation Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Developer Edition
Chiavi: 
kbinfo kbmt KB2806535 KbMtit
Traduzione automatica articoliTraduzione automatica articoli
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell’articolo: 2806535  (http://support.microsoft.com/kb/2806535/en-us/ )
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.
Condividi
Altre opzioni per il supporto
Forum del supporto di Microsoft Community
Contattaci direttamente
Ricerca di un partner certificato Microsoft
Microsoft Store