Utilizzo di Microsoft SQL Server come provider di persistenza
Panoramica
SQL Server è un sistema gestionale dei database relazionali sviluppato da Microsoft. Come server di database, è un prodotto software con la funzione principale di memorizzazione e recupero dei dati in base alle richieste di altre applicazioni software, che possono essere eseguite sullo stesso computer o su un altro computer in una rete (inclusa Internet).
In questa sezione sono inclusi gli argomenti seguenti:
Confronto tra edizioni di SQL Server
SQL Server è disponibile in tre diverse edizioni per soddisfare al meglio la propria soluzione dati: Enterprise, Standard o Express. Nella tabella seguente vengono confrontate le tre edizioni di MS SQL Server.
In genere, la SQL Standard Edition è adatta agli ambienti di produzione in quanto supporta la maggior parte delle funzionalità richieste.
Se l'ambiente di produzione richiede funzionalità a disponibilità elevata, ad esempio AlwaysOn o altre funzionalità come OLTP in memoria, partizionamento di tabelle e indici, la soluzione consigliabile è SQL Enterprise Edition.
Funzionalità
|
Enterprise Edition
|
Standard Edition
|
Express Edition
|
Dimensione massima del database relazionale
|
524 PB
|
524 PB
|
10 GB
|
Massima memoria utilizzata (per istanza di SQL Server Database Engine)
|
Massimo sistema operativo
|
128 GB
|
1 GB
|
Gruppi di disponibilità AlwaysOn
|
Sì
|
No
|
No
|
Compressione di backup
|
Sì
|
Sì
|
No
|
Mirroring del database
|
Sì
|
Sì
|
Solo controllo
|
Log shipping
|
Sì
|
Sì
|
No
|
Supporto per istanze multiple
|
50
|
50
|
50
|
Backup crittografato
|
Sì
|
Sì
|
No
|
Partizionamento di tabelle e indici
|
Sì
|
No
|
No
|
Elaborazione di interrogazioni parallele su tabelle e indici partizionati
|
Sì
|
No
|
No
|
Per descrizioni dettagliate delle funzionalità supportate dalle diverse edizioni di SQL Server, fare riferimento ai link seguenti.
Requisiti di MSSQL Server
Requisiti hardware e software
I requisiti minimi per MS SQL Server Express Edition sono disponibili al seguente link:
Per informazioni sulle risorse di dimensionamento di SQL Server per la produzione, fare riferimento alla sezione
Pianificazione della capacità.
Requisiti del sistema operativo
Microsoft Windows è l'unico sistema operativo supportato per MSSQL Server. Linux potrebbe essere supportato in futuro, ma la scelta del sistema operativo non influisce su ThingWorx. Per ulteriori informazioni, fare riferimento al link nell'
elenco riportato sopra alla pagina dei requisiti hardware e software Microsoft per la versione di MS SQL Server MS in uso.
Connettività di ThingWorx a MSSQL Server
Queste proprietà di connessione possono essere configurate nel file
platform-settings.json disponibile nel download del software ThingWorx. Il file
platform_settings.json contiene le proprietà di connessione seguenti:
• jdbcUrl: jdbc:sqlserver://localhost:1433;databaseName=thingworx;applicationName=Thingworx;"
Proprietà di connessione:
ServerName - Computer che esegue SQL Server, localhost
PortNumber - Porta su cui SQL Server è in ascolto, 1433
DatabaseName - Nome del database a cui connettersi, ThingWorx
applicationName - Nome dell'applicazione, Thingworx
Pianificazione dell'installazione di MSSQL
L'installazione di MSSQL può essere eseguita nei seguenti ambienti:
• in locale
L'Installazione guidata di SQL Server fornisce una singola struttura di funzionalità per l'installazione di tutti i componenti di SQL Server in modo che non sia necessario installarli singolarmente.
• Amazon EC2 (SQL Server in Amazon EC2)-
Amazon Web Services offre la flessibilità necessaria per eseguire Microsoft SQL Server solo per il tempo necessario. È possibile scegliere tra diverse versioni ed edizioni, nonché stabilire se procedere all'esecuzione su Amazon Elastic Compute Cloud (Amazon EC2) o su Amazon Relational Database Service (Amazon RDS).
L'utilizzo di SQL Server su Amazon EC2 consente di controllare in modo completo tutte le impostazioni, così come avviene quando viene installato in locale.
Specifiche dell'ambiente Amazon EC2
Per gli ambienti di produzione, utilizzare in Amazon EC2 le strutture descritte di seguito.
◦ Hardware dedicato
◦ La latenza della rete tra le zone di disponibilità può essere sei volte superiore alla latenza della rete interna alle zone. Di conseguenza, tutti i computer nella "Zona A - Data Center" devono risiedere in una singola zona di disponibilità.
◦ Amazon EC2 VPC. Distribuzione dei computer in una rete privata virtuale per ottenere il controllo completo dell'ambiente di rete virtuale, inclusa una selezione del proprio intervallo di indirizzi IP, la creazione di subnet e la configurazione di tabelle di route e gateway di rete. Per ulteriori informazioni, fare riferimento al link
http://aws.amazon.com/vpc/.
• HVM (Hardware Virtual Machine) utilizza un nuovo stack di virtualizzazione di rete che fornisce prestazioni di I/O più elevate e un utilizzo inferiore della CPU rispetto alle implementazioni tradizionali. Per sfruttare le funzionalità di networking avanzate, è necessario avviare una AMI HVM in un VPC e installare il driver appropriato.
• Archiviazione temporanea su SSD (i volumi EBS non sono consigliati). L'archiviazione delle istanze con supporto SSD è ottimizzata per garantire prestazioni di I/O casuali molto elevate.
|
Se non si è eseguito l'accesso all'account Amazon, seguendo questo link comporta la visualizzazione di una richiesta di accesso.
|
Configurazione di un gruppo di disponibilità AlwaysOn SQL Server
• Amazon EC2 (Microsoft SQL Server su Amazon RDS)-
• Microsoft Azure-
Microsoft Azure SQL Database è un database cloud gestito per gli sviluppatori di applicazioni che semplifica e rende più produttiva la creazione e la gestione delle applicazioni.
SQL Azure consente alle organizzazioni di archiviare i dati relazionali nel cloud e aumentare o ridurre rapidamente le dimensioni dei rispettivi database in base alle esigenze aziendali in continua evoluzione. I dati vengono ospitati, gestiti e sottoposti a provisioning nei data center Microsoft.
Le organizzazioni possono creare applicazioni locali e spostarle in SQL Azure o crearle in Windows Azure e mantenere i dati nel cloud. SQL Azure supporta il linguaggio di interrogazione Transact-SQL (T-SQL) di SQL Server, offre supporto incorporato per la disponibilità elevata e tolleranza di errore, oltre a consentire la sincronizzazione dei dati tra SQL Server e i database cloud.
Per ulteriori informazioni, fare riferimento al seguente link:
Pianificazione della capacità
Per determinare se MSSQL Server è la soluzione giusta per i propri dati, fare riferimento alle sezioni relative al dimensionamento e alla pianificazione della seguente documentazione Microsoft:
• Requisiti hardware e software:
Informazioni su SQL Server e IOPS
Durante la configurazione di un nuovo server per SQL Server o quando si aggiunge o si modifica la configurazione del disco di un sistema esistente, è buona norma determinare la capacità del sottosistema di I/O prima di distribuire SQL Server.
Prima di installare SQL, è consigliabile fare riferimento al sottosistema di I/O utilizzando lo strumento di benchmark del sottosistema del disco SQLIO.
Per informazioni su come utilizzare l'utilità SQLIOSim e SQLIO per il test delle sollecitazioni, fare riferimento al video TechNet
Stress testing using SQLIOSIM and SQLIO.
Scelta dei tipi di disco
I tipi di disco utilizzati nel sistema possono influire sull'affidabilità e sulle prestazioni.
Per l'archiviazione in SQL Server utilizzare le unità SSD.
Scelta dei tipi di RAID
Sebbene la tecnologia RAID non faccia parte di SQL Server, la sua implementazione può influire direttamente sulle prestazioni di SQL Server. In genere con SQL Server vengono utilizzati i livelli RAID 0, 1 e 5.
Limiti della capacità di calcolo per edizione di SQL Server
Per ulteriori informazioni sui limiti della capacità di calcolo, fare riferimento al seguente link:
Specifiche di capacità massima per SQL Server
Per ulteriori informazioni sui limiti di capacità massima, fare riferimento al seguente link:
Best practice I/O di pre-distribuzione
Per le best practice di SQL Server, fare riferimento al seguente articolo:
Concetti correlati