Il processo della fase di esecuzione SSIS 2008 si blocca quando si esegue il pacchetto SSIS 2008 in una condizione di memoria insufficiente

Traduzione articoli Traduzione articoli
Identificativo articolo: 977190 - Visualizza i prodotti a cui si riferisce l?articolo.
Microsoft distribuisce le correzioni Microsoft SQL Server 2008 come un unico file scaricabile. Poiché le correzioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e tutte le correzioni di protezione fornite con SQL Server 2008 precedente correggere rilascio.
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Si dispone di un pacchetto SQL Server 2008 Integration Services (SSIS 2008). Il pacchetto contiene un'attività flusso di dati. Quando si esegue il pacchetto su un server che si trova in una condizione di memoria insufficiente, si verifica una violazione di accesso e quindi il processo di runtime SSIS 2008 si blocca. Inoltre, vengono visualizzati avvisi sull'esaurimento della memoria analoghi ai seguenti nel registro applicazione 2008 SSIS:
Nome dell'evento: OnInformation

Descrizione: Il buffer manager non è riuscito a effettuare una chiamata di allocazione memoria per i byte 10484760 ma non è stato in grado di eseguire lo swapping su tutti i buffer per ridurre l'utilizzo eccessivo della memoria. sono stati considerati i 305 buffer e 295 bloccati. Entrambi memoria insufficiente è disponibile per la pipeline perché insufficiente vengono installati, utilizzavano altri processi oppure troppi buffer sono bloccati.

Nome dell'evento: OnInformation

Descrizione: Il manager di buffer allocato 10485608 byte, anche se è stata rilevata la pressione della memoria e tentativi ripetuti di effettuare lo scambio dei buffer non sono riuscita.


Nota I diversi processi di runtime esecuzione pacchetti SSIS 2008 sono DTExec.exe, DTSHost.exe o DTSDebugHost.exe. Il processo che esegue il pacchetto SSIS 2008 dipende dalle condizioni che il pacchetto è nella casella. Viene eseguito il processo DTExec.exe pacchetti padre. Viene eseguito il processo DTSHost.exe pacchetti figli. Pacchetti di debug da Business Intelligence Design Studio viene eseguito il processo DtsDebugHost.exe.

Cause

SSIS 2008 viene notificato che il server è in una condizione di memoria insufficiente. Quando sono disponibili solo 128 megabyte (MB a 256 MB di memoria) si verifica una condizione di memoria insufficiente. Quindi, il processo di runtime SSIS 2008 inizia scambiare i buffer della pipeline di flusso dei dati nella cartella temporanea specificata dalla proprietà BufferTempStoragePath.

Nel caso menzionato nella sezione ? Sintomi ? i dati in un buffer vengono copiati internamente in un buffer di destinazione tramite una trasformazione. Ad esempio, i dati in un buffer vengono copiati da una trasformazione merge join. Questa operazione si verifica quando il server è in una condizione di memoria insufficiente. Tuttavia, la trasformazione non riconosce che un thread all'esterno della trasformazione improvvisamente swapping il buffer di destinazione. Di conseguenza, l'operazione di copia ha esito negativo e fa sì che la violazione di accesso.

Risoluzione

Questo aggiornamento rapido (hotfix) di bloccare il buffer di destinazione in modo esplicito durante un'operazione di copia. Questo comportamento impedisce che altri thread sostituzione il buffer di destinazione quando l'operazione di copia è in esecuzione.La correzione di questo problema è stata rilasciata prima nell'aggiornamento cumulativo 6 per SQL Server 2008 Service Pack 1. Per ulteriori informazioni su questo pacchetto di aggiornamento cumulativo, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
977443Pacchetto di aggiornamento cumulativo 6 per SQL Server 2008 Service Pack 1
Nota Poiché le generazioni sono cumulative, ogni nuova versione di correzione contiene tutti gli hotfix e tutte le correzioni di protezione fornite con SQL Server 2008 precedente correggere rilascio. Si consiglia di considerare l'applicazione alla versione più recente di correzione che contiene questo aggiornamento rapido (hotfix). Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
970365Versioni di SQL Server 2008 rilasciate dopo il rilascio di SQL Server 2008 Service Pack 1
Microsoft SQL Server 2008 aggiornamenti rapidi vengono creati per specifici i service pack di SQL Server. È necessario applicare un hotfix di SQL Server 2008 Service Pack 1 per un'installazione di SQL Server 2008 Service Pack 1. Per impostazione predefinita, qualsiasi hotfix fornito in un service pack di SQL Server è incluso nel prossimo service pack di SQL Server.

Workaround

Per aggirare il problema, risolvere la condizione di memoria insufficiente. La quantità di memoria che può attivare questo problema varia in computer diversi. Questo importo è in genere compresa tra 32 e 64 MB. Pertanto, si consiglia di configurare il server di allocare più di 64 MB di memoria disponibile a SSIS 2008.

Mano che cambia la quantità di memoria disponibile che segnala un evento di notifica di memoria insufficiente risorsa predefinita. La memoria disponibile compreso tra 32 MB e 64 MB per ogni 4 gigabyte (GB). Questo problema è difficile impedire perché la memoria disponibile sui server di produzione impegnato mano che cambia. Inoltre, è possibile ridurre memoria per vari altri motivi. Per ulteriori informazioni sulle notifiche di risorse di memoria, visitare il seguente sito Web MSDN (informazioni in lingua INGLESE):
Function that creates memory resource notification objects
Per ridurre la frequenza di questo problema, utilizzare uno dei metodi descritti di seguito.

Metodo 1

Aggiungere una maggiore quantità di memoria fisica al computer.

Metodo 2

Eseguire il pacchetto SSIS 2008 in un computer che non è in esecuzione un'istanza di SQL Server.

Metodo 3

Quando si esegue il pacchetto SSIS 2008, impostare l'opzione di memoria massima del server per l'istanza di SQL Server 2008 su un valore inferiore. Questo comportamento aumenta la memoria disponibile.

Metodo 4

Chiudere le applicazioni che utilizzano grandi quantità di memoria quando si esegue il pacchetto SSIS 2008 che contiene le attività di flusso dei dati.

Metodo 5

Eseguire il pacchetto SSIS 2008 e le attività di flusso dei dati nella serie anziché in parallelo per ridurre l'utilizzo della memoria.


Metodo 6

Utilizzare il metodo descritto nella sottosezione "Come monitorare il consumo di memoria per SSIS" della sezione "Informazioni" per risolvere la condizione di memoria insufficiente. Quindi, ottimizzare l'utilizzo della memoria per SSIS 2008.

Status

Microsoft ha confermato che si tratta di un problema con i prodotti elencati nella sezione "Si applica a".

Informazioni

Come monitorare il consumo di memoria per SSIS

Monitorare la memoria per misurare l'utilizzo di picco per diversi processi di fase di esecuzione SQL Server Integration Services calcolare l'utilizzo della memoria massima

Monitorare la memoria di picco dei vari processi di esecuzione SQL Server Integration Services (SSIS) utilizzando Byte privati contatore Process di oggetto in Performance Monitor. Il processo DTExec.exe e il processo DTSHost.exe sono esempi di processi di esecuzione SSIS.

Quando i pacchetti SSIS in esecuzione, individuare il valore massimo di Byte privati contatore. Quando più pacchetti sono in esecuzione in parallelo, sommare i valori massimi di tutti i processi in esecuzione per ottenere il valore massimo per l'utilizzo della memoria.

Monitorare i processi esterni per trovare picchi e minimi

Monitorare la memoria di picco di processi di fuori del servizio SQL Server e il servizio SSIS mediante Byte privati contatore Process di oggetto in Performance Monitor. Controllare la presenza di tempi di utilizzo di picco potrebbero diminuire la memoria disponibile per SSIS. Orari di punta sono, ad esempio, quando più utenti utilizzano RDP (Remote Desktop Protocol) per connettersi al server o durante l'esecuzione di software di backup.

Monitorare l'utilizzo della memoria SQL Server per trovare picchi e minimi

Se il messaggio "Le pagine per il pool di buffer bloccato using" non è nel file registro errori più recente, Byte privati contatore per il processo sqlservr.exe può indicare la quantità di memoria è utilizzato dai servizi di SQL Server.

Se il messaggio "Le pagine per il pool di buffer bloccato using" è incluso nel file di registro più recente di errore, utilizzare Total Server Memory (KB) contatore del SQLServer: Gestione memoria oggetto delle prestazioni per misurare l'utilizzo della memoria del pool di buffer di SQL Server. Inoltre, utilizzare Byte privati contatore per il processo sqlservr.exe trovare le allocazioni di memoria di fuori del pool di buffer (MemToLeave). La somma del valore MemToLeave e il valore del contatore Total Server Memory (KB) è una buona stima della quantità totale di memoria utilizzato da SQL Server.

Performance Monitor e Task Manager non viene visualizzata la quantità di memoria utilizzata da queste pagine del pool di buffer quando una delle seguenti condizioni è vera:
  • Per l'account di avvio del servizio SQL Server viene assegnato il diritto utente Lock Pages in Memory.
  • AWE è attivata la memoria.
Nota Quando si verifica una delle seguenti condizioni è true, il Byte privati del contatore per il processo sqlservr.exe dovrà indicare la quantità di memoria è utilizzato dai servizi di SQL Server per diverse istanze di SQL Server.

Monitorare il valore minimo di memoria disponibile in Windows

Per monitorare la quantità di memoria è disponibile in Windows, utilizzare uno dei metodi descritti di seguito:
  • Utilizzare MByte disponibili contatore di Performance Monitor per indicare la quantità di memoria è disponibile.
  • Visualizzazione valore Fisico memoria (MB) ? disponibile nella scheda prestazioni di Task Manager.

    Nota In alcuni sistemi operativi, Fisico memoria (MB) ? Free valore dell'etichetta che indica che il valore Fisico Memory (KB) ? disponibile.

Riferimenti

Per informazioni sul modello di manutenzione incrementale per SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
935897Un modello di manutenzione incrementale è disponibile dal team di SQL Server per distribuire gli aggiornamenti rapidi per i problemi segnalati


Per ulteriori informazioni sullo schema di denominazione degli aggiornamenti di SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
822499Nuovo schema di denominazione per i pacchetti di aggiornamento software Microsoft SQL Server


Per ulteriori informazioni sulla terminologia di aggiornamento software, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
824684Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft

Proprietà

Identificativo articolo: 977190 - Ultima modifica: venerdì 29 gennaio 2010 - Revisione: 1.1
Le informazioni in questo articolo si applicano a:
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Workgroup
Chiavi: 
kbmt kbexpertiseadvanced kbfix kbsurveynew kbqfe kbhotfixserver KB977190 KbMtit
Traduzione 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: 977190
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.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com