Integrazione di SQL Server 2008 e Office SharePoint Server 2007

Contenuto dell'articolo:

  • Informazioni sull'integrazione di Office SharePoint Server con SQL Server 2008

  • Compressione dei backup di database

  • Compressione del flusso di log

  • TDE (Transparent Data Encryption)

  • SQL Server 2008 Resource Governor

In questo articolo sono disponibili informazioni e indicazioni per l'implementazione di alcune delle nuove caratteristiche di Microsoft SQL Server 2008 che possono ottimizzare la distribuzione di Microsoft Office SharePoint Server.

Informazioni sull'integrazione di Office SharePoint Server con SQL Server 2008

Per Office SharePoint Server, gli aspetti più importanti di SQL Server 2008 riguardano i miglioramenti nelle aree seguenti:

  • Prestazioni, grazie alla compressione dei backup di database.

  • Disponibilità, grazie alla compressione del flusso di log.

  • Protezione, grazie all'implementazione di Transparent Data Encryption (TDE).

  • Gestione delle risorse, grazie all'utilizzo di SQL Server 2008 Resource Governor.

Nota

Per informazioni sui requisiti di sistema per Microsoft Office SharePoint Server 2007, vedere Determinare i requisiti hardware e software (Office SharePoint Server).

Per informazioni sui requisiti di sistema per SQL Server 2008, vedere Requisiti hardware e software per l'installazione di SQL Server 2008 (https://go.microsoft.com/fwlink/?linkid=129377&clcid=0x410).

Per informazioni di confronto delle caratteristiche supportate in SQL Server 2008 Enterprise e SQL Server 2008 Standard, vedere Confronto delle caratteristiche di Microsoft SQL Server 2008 Enterprise e Standard (informazioni in lingua inglese) (https://go.microsoft.com/fwlink/?linkid=129378&clcid=0x410) (informazioni in lingua inglese) .

Compressione dei backup di database

SQL Server 2008 Enterprise Edition consente di comprimere i backup di database ed è possibile utilizzare qualsiasi versione di SQL Server 2008 per ripristinare i backup compressi. La possibilità di comprimere i backup di database è una funzionalità importante di SQL Server 2008 per gli utenti di Office SharePoint Server. Tramite l'impostazione del contrassegno di compressione nello script di backup o tramite la configurazione del server applicazioni che esegue SQL Server 2008 Enterprise Edition per attivare la compressione per impostazione predefinita, è possibile ridurre in modo significativo le dimensioni dei backup di database e dei log distribuiti.

Il costo e la complessità delle operazioni di backup e ripristino sono aspetti importanti della gestibilità IT. Mediante la compressione dei backup per Office SharePoint Server in esecuzione su SQL Server 2008 potrebbe essere possibile ottenere un risparmio in termini di costi per le operazioni di backup e ripristino. L'entità del risparmio varia a seconda di quanto le distribuzioni di Office SharePoint Server sono incentrate sui documenti e da quali versioni di applicazioni client di Office sono presenti nell'ambiente.

Per impostazione predefinita, Office SharePoint Server archivia i flussi di documenti in tabelle SQL. A seconda della distribuzione, i flussi di documenti possono consumare una notevole percentuale della capacità totale del database (all'incirca dal 70 al 95% in base ad alcuni database di esempio di Office SharePoint Server). Se l'ambiente è costituito prevalentemente da applicazioni client di Office 2007, potrebbe non essere possibile ottenere un risparmio di costi significativo mediante la compressione dei backup. In questo scenario il risparmio potrebbe infatti essere uguale o inferiore al 20%. Tuttavia, se i dati esistenti sono composti perlopiù da contenuti creati con Office 2003 o versioni precedenti di Office, l'attivazione della compressione dei backup in SQL Server 2008 può ridurre in modo significativo le dimensioni delle immagini di backup e quindi offrire un risparmio interessante.

La compressione dei backup può essere implementata tramite la configurazione delle proprietà di SQL Server in SQL Server Management Studio nel server applicazioni che esegue SQL Server 2008 Enterprise Edition. Per ulteriori informazioni, vedere Introduzione a SQL Server Management Studio (https://go.microsoft.com/fwlink/?linkid=129379&clcid=0x410).

È inoltre possibile configurare la compressione dei backup di database aggiungendo la clausola di compressione nello script di backup, come indicato nell'esempio di codice seguente:

BACKUP DATABASE [<DATABASE_NAME>]
TO DISK = 'E:\BACKUP\<DATABASE_NAME>.bak'
WITH COMPRESSION;

Per la compressione sono richieste risorse di CPU e in molti ambienti si tratta di risorse preziose, anche durante i periodi destinati ai backup. Per impostazione predefinita, il backup con la compressione aumenta in modo significativo l'utilizzo della CPU e le risorse di CPU aggiuntive dedicate alla compressione possono influire negativamente sulle prestazioni di operazioni simultanee. Per ulteriori informazioni, vedere Compressione backup (SQL Server) (https://go.microsoft.com/fwlink/?linkid=129381&clcid=0x410).

Compressione del flusso di log

Uno dei fattori che limita le prestazioni del mirroring di database è la velocità effettiva della rete tra il server principale e il server mirror. SQL Server 2008 supporta la compressione del flusso di log costituito dagli inserimenti, dagli aggiornamenti e dalle eliminazioni trasferiti tra i server. La compressione del flusso di log può contribuire a ottimizzare la velocità effettiva della rete, in particolare in ambienti con condizioni di rete poco efficienti. L'efficacia della compressione dovrebbe essere simile a quella della compressione dei backup, con un impatto simile anche a livello di risorse della CPU. Diversamente dalla compressione dei backup, tuttavia, l'impatto sulle risorse della CPU è difficile da controllare. La compressione del flusso di log viene attivata per impostazione predefinita non appena si avvia una sessione di mirroring. È tuttavia possibile disattivare la compressione del flusso di log tramite il flag di traccia 1462. Per ulteriori informazioni sulla compressione del flusso di log e il mirroring, vedere Miglioramenti apportati alla disponibilità (Motore di database) (https://go.microsoft.com/fwlink/?linkid=129382&clcid=0x410).

TDE (Transparent Data Encryption)

Il supporto della tecnologia TDE in SQL Server 2008 Enterprise Edition rappresenta un importante miglioramento delle funzionalità di crittografia di Microsoft SQL Server 2005. TDE consente di crittografare interi database senza che siano richieste modifiche dell'applicazione o altre interazioni con l'applicazione. I dati vengono crittografati da TDE durante la scrittura su disco e decrittografati durante la lettura dal disco. È possibile attivare TDE eseguendo la procedura descritta negli esempi di codice seguente:

  1. Creare una chiave di crittografia

  2. Creare un certificato

  3. Configurare il database per l'utilizzo del certificato per la crittografia

  4. Attivare la crittografia

Creare una chiave di crittografia

USE MASTER;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'p@$$W0rd'
Nota sulla sicurezzaProtezione Nota:

Se sono attivi criteri di complessità, è necessario che la password soddisfi i requisiti di complessità.

Creare un certificato

CREATE CERTIFICATE MYENCRYPTCERT WITH SUBJECT = 'TDE';

Nota

Eseguire il backup del certificato con una chiave e salvarlo.

Configurare il database per l'utilizzo del certificato per la crittografia

USE <ContentDB>;
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE MYENCRYPTCERT;

Nota

Nell'esempio di codice precedente si possono usare molti algoritmi diversi.

Attivare la crittografia

ALTER DATABASE <ContentDB>
SET ENCRYPTION ON;

La crittografia TDE è un'operazione che richiede molte risorse di CPU e per garantire la protezione è necessario limitare l'ambito della crittografia ai seguenti elementi:

  • Database crittografato

  • Log

  • Database temporaneo

  • Backup del database crittografato

Ciò significa che in sistemi occupati verranno utilizzate molte risorse di CPU anche se viene crittografato un numero limitato di database. Per questo motivo è consigliabile utilizzare la crittografia con cautela e implementarla solo quando assolutamente necessario, dopo accurati test delle prestazioni e delle conseguenze operative. Si potrebbe valutare la possibilità di limitare l'implementazione di TDE a subset di database per i quali la protezione è estremamente importante e la scalabilità è meno rilevante.

Per ulteriori informazioni sulla crittografia di database in SQL Server 2008 Enterprise Edition, vedere Crittografia dei database in SQL Server 2008 Enterprise Edition (informazioni in lingua inglese) (https://go.microsoft.com/fwlink/?linkid=129383&clcid=0x410) (informazioni in lingua inglese) .

Fattori aggiuntivi da considerare quando si utilizza TDE

  • La compressione dei backup sarà meno efficace per i database crittografati.

  • TDE potrebbe non trarre vantaggio dalla disponibilità di più processori.

  • TDE influisce sulle operazioni di ripristino e di ripristino d'emergenza perché è necessario un certificato di crittografia per ripristinare un database. Senza un certificato di crittografia, l'operazione di ripristino avrà esito negativo.

  • TDE influisce sul mirroring di database e il log shipping. È necessario installare un certificato di crittografia nei server partner per consentire il mirroring o il log shipping.

  • I dati di flussi di file non verranno crittografati.

Per ulteriori informazioni su TDE, vedere Informazioni sulla crittografia trasparente dei dati (TDE, Transparent Data Encryption) (https://go.microsoft.com/fwlink/?linkid=129384&clcid=0x410).

SQL Server 2008 Resource Governor

SQL Server 2008 Resource Governor consente di controllare in modo preciso le modalità di allocazione delle risorse di SQL Server, come CPU e memoria. È possibile utilizzare Resource Governor per applicare soglie alle connessioni in ingresso in base ai criteri assegnati. Resource Governor può essere applicato a qualsiasi attributo che rende univoca una richiesta in ingresso. Ad esempio, se si desidera evitare l'utilizzo eccessivo di memoria per un'applicazione per la creazione di report in esecuzione in un server separato, è possibile creare un criterio che identifichi l'applicazione in base al nome dell'applicazione, al nome dell'host o al nome dell'utente.

Importante

Non utilizzare SQL Server 2008 Resource Governor per controllare l'utilizzo di SQL Server da parte di Office SharePoint Server. Ad esempio, un server di indicizzazione che utilizza una quantità eccessiva di risorse di SQL Server è un problema di pianificazione delle capacità che deve essere risolto tramite l'estensione delle capacità e non tramite la limitazione artificiale di servizi cruciali. La limitazione di servizi di SharePoint, indipendentemente da quanto possano sembrare poco importanti, può avere serie implicazioni negative sullo stato di integrità e il supporto dell'ambiente.

Resource Governor consente di gestire e amministrare le risorse di SQL Server. Ad esempio, se si desidera assicurarsi che il team non possa utilizzare Management Studio o Query Analyzer per sovraccaricare SQL Server con query ad hoc, è possibile utilizzare Resource Governor per impedire l'utilizzo per le query ad hoc di più del 25% delle risorse di CPU disponibili, eseguendo la procedura illustrata negli esempi di codice seguenti:

  1. Creare un pool di risorse per limitare l'utilizzo della CPU al 25%

  2. Creare un gruppo di carico di lavoro per le query ad hoc e registrarlo nel nuovo pool di risorse

  3. Creare una funzione per classificare Management Studio e Query Analyzer come membri del gruppo ad hoc

  4. Registrare la nuova funzione in Resource Governor

  5. Riavviare Resource Governor

Creare un pool di risorse per limitare l'utilizzo della CPU al 25%

CREATE RESOURCE POOL poolAdhoc
WITH (MAX_CPU_PERCENT = 25);

Creare un gruppo di carico di lavoro per le query ad hoc e registrarlo nel nuovo pool di risorse

CREATE WORKLOAD GROUP groupAdhoc
USING poolAdhoc;

Creare una funzione per classificare Management Studio e Query Analyzer come membri del gruppo ad hoc

CREATE FUNCTION adhocQueryClassifier() RETURNS SYSNAME
WITH SCHEMABINDING
AS
BEGIN
   DECLARE @grp_name AS SYSNAME
      IF (APP_NAME() LIKE '%MANAGEMENT STUDIO%')
         OR (APP_NAME() LIKE '%QUERY ANALYZER%')
         SET @grp_name = 'groupAdhoc'
   RETURN @grp_name
END
GO

Registrare la nuova funzione in Resource Governor

ALTER RESOURCE GOVERNOR
WITH (CLASSIFIER_FUNCTION= dbo.adhocQueryClassifier);

Riavviare Resource Governor

ALTER RESOURCE GOVERNOR RECONFIGURE;

Le query avviate da SQL Management Studio o Query Analyzer verranno allocate a poolAdhoc e, se le risorse di CPU diventano limitate, le query verranno vincolate in modo da non utilizzare più del 25% delle risorse di CPU disponibili. Se le risorse di CPU sono più che sufficienti, ogni query potrà utilizzare le risorse necessarie senza limitazioni. È inoltre possibile utilizzare Resource Governor per allocare una quantità minima di risorse.

Per ulteriori informazioni su Resource Governor, vedere Gestione di carichi di lavoro di SQL Server con Resource Governor (https://go.microsoft.com/fwlink/?linkid=129385&clcid=0x410).

Scaricare il manuale

Questo argomento è incluso nel manuale seguente, che può essere scaricato per una lettura e una stampa più agevoli:

Per un elenco completo dei manuali disponibili che è possibile scaricare per Office SharePoint Server 2007, vedere Downloadable content for Office SharePoint Server 2007 (informazioni in lingua inglese).