Pre-configurazione per le ottimizzazioni del database BizTalk Server
BizTalk Server è un'applicazione estremamente intensivo del database che può richiedere la creazione di fino a 13 database separati in Microsoft SQL Server. A causa del ruolo critico che SQL Server svolge in qualsiasi ambiente BizTalk Server, è di importanza fondamentale che SQL Server sia configurato/ottimizzato per prestazioni ottimali. Se SQL Server non è ottimizzato per eseguire correttamente, i database usati da BizTalk Server diventeranno un collo di bottiglia e le prestazioni complessive dell'ambiente BizTalk Server subiranno. In questo argomento vengono descritte diverse ottimizzazioni delle prestazioni SQL Server che devono essere seguite prima di installare BizTalk Server e configurare i database BizTalk Server.
Impostare l'unità di allocazione file NTFS
SQL Server archivia i dati in Extent, che sono gruppi di otto pagine 8K. Pertanto, per ottimizzare le prestazioni del disco, impostare le dimensioni dell'unità di allocazione NTFS su 64 KB, come descritto nella guida SQL Server per le procedure consigliate per la configurazione del disco - Procedure consigliate per la predistribuzione dell'I/O. Per altre informazioni sulle pagine e gli extent di SQL Server, vedere Informazioni sulle pagine e sugli extent.
Considerazioni sulla pianificazione del database
Microsoft consiglia di ospitare i database SQL Server nell'archiviazione veloce,ad esempio dischi SAN veloci o dischi SCSI veloci. Microsoft consiglia RAID 10 (1+0) anziché RAID 5 perché RAID 5 è più lento nella scrittura. I dischi SAN più recenti hanno cache di memoria molto grandi, quindi in questi casi la selezione RAID non è importante. Per aumentare le prestazioni, i database e i relativi file di log possono risiedere in dischi fisici diversi.
Installare il Service Pack più recente e gli aggiornamenti cumulativi per SQL Server
Installare i Service Pack più recenti e gli aggiornamenti cumulativi più recenti per SQL Server 2005 e SQL Server 2008 e i Service Pack più recenti di .NET Framework.
Installare i Service Pack SQL in BizTalk Server e SQL Server
Quando si installano i Service Pack per SQL Server, installare anche il Service Pack nel computer BizTalk Server. BizTalk Server usa i componenti client SQL aggiornati dai Service Pack di SQL Server.
Valutare la possibilità di implementare SQL Server 2008 Data Collector and Management Data Warehouse
SQL Server 2008 supporta l'uso del nuovo Data Warehouse di raccolta dati e gestione per raccogliere i dati correlati alle prestazioni di ambiente/database per l'analisi dei test e delle tendenze. L'agente di raccolta dati mantiene tutti i dati raccolti nella Data Warehouse di gestione specificata. Sebbene non si tratta di un'ottimizzazione delle prestazioni, questa operazione sarà utile per l'analisi di eventuali problemi di prestazioni.
Concedere l'account usato per SQL Server il privilegio Pagine di blocco di Windows in memoria
Concedere il privilegio "Blocca pagine in memoria" all'account del servizio SQL Server. Questa operazione deve essere eseguita per impedire al sistema operativo Windows di eseguire il paging della memoria del pool di buffer del processo di SQL Server bloccando la memoria allocata per il pool di buffer in memoria fisica. Per altre informazioni, vedere l'articolo di Microsoft Knowledge Base 914483 "Come ridurre il paging della memoria del pool di buffer nella versione a 64 bit di SQL Server 2005" in https://go.microsoft.com/fwlink/?LinkId=148948.
Concedere il diritto di SE_MANAGE_VOLUME_NAME all'account del servizio SQL Server
Assicurarsi che l'account che esegue il servizio SQL Server disponga del privilegio "Esegui attività di manutenzione del volume" di Windows o assicurarsi che appartenga a un gruppo di sicurezza che esegue. In questo modo, l'inizializzazione immediata dei file garantisce prestazioni ottimali se un database deve aumentare automaticamente.
Impostare la memoria min e max server
I computer che eseguono SQL Server che ospitano i database di BizTalk Server devono essere dedicati all'esecuzione di SQL Server. È consigliabile impostare le opzioni "min server memory" e "max server memory" in ogni SQL Server istanza per specificare la quantità fissa di memoria da allocare a SQL Server. In questo caso, è necessario impostare la "memoria min server" e "max server memory" sullo stesso valore (uguale alla quantità massima di memoria fisica che SQL Server userà). In questo modo verrà ridotto il sovraccarico che altrimenti verrà usato da SQL Server gestione dinamica di questi valori. Eseguire i comandi T-SQL seguenti in ogni computer SQL Server per specificare la quantità fissa di memoria da allocare a SQL Server:
sp_configure ‘Max Server memory (MB)’,(max size in MB)
sp_configure ‘Min Server memory (MB)’,(min size in MB)
Prima di impostare la quantità di memoria per SQL Server, determinare l'impostazione di memoria appropriata sottraendo la memoria necessaria per Windows Server dalla memoria fisica totale. Si tratta della quantità massima di memoria che è possibile assegnare a SQL Server.
Nota
Se i computer che eseguono SQL Server che ospitano i database BizTalk Server ospitano anche il server di Sign-On master secret enterprise, potrebbe essere necessario modificare questo valore per assicurarsi che sia disponibile memoria sufficiente per eseguire il servizio Enterprise Single Sign-On Service. Non è raro eseguire un'istanza cluster del servizio Enterprise Single Sign-On in un cluster SQL Server per fornire disponibilità elevata per il server master secret. Per altre informazioni sul clustering di Enterprise Single Sign-On Master Secret Server, vedere l'argomento "How to Cluster the Master Secret Server" in BizTalk Serverdocumentation at https://go.microsoft.com/fwlink/?LinkID=106874.
Suddividere il database tempdb in più file di dati di dimensioni uguali in ogni istanza SQL Server usata da BizTalk Server
Assicurarsi che i file di dati usati per tempdb siano di dimensioni uguali è fondamentale perché l'algoritmo di riempimento proporzionale usato da SQL Server si basa sulle dimensioni dei file di dati. Questo algoritmo tenta di assicurarsi che SQL Server riempia ogni file in proporzione allo spazio libero lasciato nel file in modo che raggiungano la capacità massima contemporaneamente. Se i file di dati vengono creati con dimensioni non uguali, l'algoritmo di riempimento proporzionale userà il file più grande per le allocazioni GAM anziché distribuire le allocazioni tra tutti i file, sconfiggendo così lo scopo di creare più file di dati. Il numero di file di dati per il database tempdb deve essere configurato per essere almeno uguale al numero di processori assegnati per SQL Server.
Abilitare il flag di traccia T1118 come parametro di avvio per tutte le istanze di SQL Server
Se si implementa il flag di traccia - T1118 consente di ridurre la contesa tra le istanze di SQL Server rimuovendo quasi tutte le allocazioni di pagine singole. Per altre informazioni, vedere Microsoft Knowledge Base 328551 - Miglioramenti della concorrenza per il database tempdb.
Non modificare le impostazioni di SQL Server predefinite per il grado massimo di parallelismo, SQL Server statistiche o ricompilare gli indici di database e la deframmentazione
Se si dispone di un'istanza di SQL Server che ospita i database BizTalk Server, non modificare le impostazioni di SQL Server per il grado massimo di parallelismo, SQL Server statistiche nel database MessageBox e le impostazioni per la ricompilazione e la deframmentazione dell'indice di database. Per altre informazioni, vedere impostazioni SQL Server che non devono essere modificate.