Cos'è Amazon Relational Database Service (Amazon RDS)? - Amazon Relational Database Service

Cos'è Amazon Relational Database Service (Amazon RDS)?

Amazon Relational Database Service (Amazon RDS) è un servizio Web che semplifica la configurazione, l'uso e il dimensionamento di un database relazionale in AWS Cloud. Offre una capacità ridimensionabile a un costo conveniente per un database relazionale standard del settore e gestisce task comuni di amministrazione del database.

Nota

In questa guida vengono descritti i motori di database Amazon RDS diversi da Amazon Aurora. Per ulteriori informazioni sull'utilizzo di Amazon Aurora, consulta la Guida per l'utente di Amazon Aurora.

Se non hai familiarità con i prodotti e i servizi AWS, consulta le risorse seguenti per informazioni di base.

Panoramica di Amazon RDS

Perché desideri eseguire un database relazionale in AWS Cloud? Poiché AWS esegue automaticamente molte delle difficili e noiose attività di gestione di un database relazionale.

Database On-Premise e di Amazon EC2

Amazon Elastic Compute Cloud (Amazon EC2): fornisce capacità di calcolo scalabile e sicura in AWS Cloud. Amazon EC2 elimina la necessità di investimenti anticipati in hardware e ti permette di sviluppare e distribuire più rapidamente le applicazioni.

Quando si acquista un server On-Premise, CPU, memoria, storage e IOPS sono tutti disponibili nel bundle. Con Amazon EC2, sono forniti separatamente in modo da poterli dimensionare in modo indipendente l'uno dall'altro. Se hai bisogno di una maggiore quantità di CPU, meno IOPS o più storage, puoi effettuarne l'allocazione con estrema facilità.

Per un database relazionale in un server On-Premise, l'utente assume la piena responsabilità del server, del sistema operativo e del software. Per un database su un'istanza Amazon EC2, AWS gestisce i livelli al di sotto del sistema operativo. In questo modo, Amazon EC2 elimina parte dell'onere della gestione di un server di database On-Premise.

Nella tabella seguente, sono riportati i modelli di gestione dei database On-Premise e Amazon EC2.

Caratteristica

Gestione On-Premise

Gestione di Amazon EC2

Ottimizzazione dell'applicazione

Customer

Customer

Dimensionamento

Customer

Customer

Elevata disponibilità

Customer

Customer

Backup del database

Customer

Customer

Patching del software del database

Customer

Customer

Installazione del software del database

Customer

Customer

Patching del sistema operativo

Customer

Customer

Installazione del sistema operativo

Customer

Customer

Manutenzione del server

Customer

AWS

Ciclo di vita hardware

Customer

AWS

Alimentazione, rete e raffreddamento

Customer

AWS

Amazon EC2 non è un servizio completamente gestito. Pertanto, quando esegui un database su Amazon EC2, sei più soggetto a errori dell'utente. Ad esempio, quando si aggiorna manualmente il sistema operativo o il software del database, è possibile causare accidentalmente tempi di inattività dell'applicazione. Potresti passare ore a controllare ogni modifica per identificare e risolvere un problema.

Amazon EC2 e Amazon RDS

Amazon RDS è un servizio di database gestito. È responsabile della maggior parte delle attività di gestione. Eliminando le noiose attività manuali, Amazon RDS ti permette di concentrarti sulla tua applicazione e sui tuoi utenti. Consigliamo Amazon RDS su Amazon EC2 come scelta predefinita per la maggior parte delle distribuzioni di database.

Nella tabella seguente, sono riportati i modelli di gestione in Amazon EC2 e Amazon RDS.

Caratteristica

Gestione di Amazon EC2

Gestione di Amazon RDS

Ottimizzazione dell'applicazione

Customer

Customer

Dimensionamento

Customer

AWS

Elevata disponibilità

Customer

AWS

Backup del database

Customer

AWS

Patching del software del database

Customer

AWS

Installazione del software del database

Customer

AWS

Patching del sistema operativo

Customer

AWS

Installazione del sistema operativo

Customer

AWS

Manutenzione del server

AWS

AWS

Ciclo di vita hardware

AWS

AWS

Alimentazione, rete e raffreddamento

AWS

AWS

Amazon RDS offre i seguenti vantaggi specifici rispetto alle distribuzioni di database non completamente gestite:

  • Puoi utilizzare i prodotti di database che già conosci: MySQL, MariaDB, PostgreSQL, Oracle, Microsoft SQL Server.

  • Amazon RDS gestisce i backup, l'applicazione di patch software, il rilevamento automatico dei guasti e il ripristino.

  • È possibile attivare backup automatici o creare manualmente snapshot di backup personalizzate. Tali backup possono essere utilizzati per ripristinare un database. Il processo di ripristino di Amazon RDS è affidabile ed efficiente.

  • È possibile ottenere elevata disponibilità con un'istanza principale e un'istanza secondaria sincrona su cui puoi eseguire il failover in caso di problemi. Puoi anche utilizzare repliche di lettura per aumentare il dimensionamento della lettura.

  • Oltre alla sicurezza nel pacchetto di database, puoi controllare chi accede ai database RDS utilizzando AWS Identity and Access Management (IAM) per definire utenti e autorizzazioni. È anche possibile proteggere i database inserendoli in un Virtual Private Cloud (VPC).

Amazon RDS Custom per Oracle e Microsoft SQL Server

Amazon RDS Custom è un tipo di gestione RDS che offre accesso completo al database e al sistema operativo.

È possibile utilizzare le funzionalità di controllo di RDS Custom per accedere e personalizzare l'ambiente di database e il sistema operativo per applicazioni aziendali legacy e in pacchetti. Nel frattempo, Amazon RDS automatizza le attività e le operazioni di amministrazione del database.

In questo modello di implementazione, è possibile installare applicazioni e modificare le impostazioni di configurazione in base alle applicazioni. Allo stesso tempo, è possibile scaricare le attività di amministrazione del database come provisioning, dimensionamento, aggiornamento e backup su AWS. Puoi sfruttare i vantaggi di gestione del database di Amazon RDS, con maggiore controllo e flessibilità.

Per Oracle Database e Microsoft SQL Server, RDS Custom combina l'automazione di Amazon RDS con la flessibilità di Amazon EC2. Per ulteriori informazioni sui RDS Custom, consulta Utilizzo di Amazon RDS Custom.

Con il modello di responsabilità condivisa di RDS Custom, ottieni più controllo rispetto ad Amazon RDS, ma anche maggiore responsabilità. Per ulteriori informazioni, consulta Modello di responsabilità condivisa.

Amazon RDS su AWS Outposts

Amazon RDS su AWS Outposts estende i database RDS for SQL Server, RDS for MySQL e RDS for PostgreSQL agli ambienti AWS Outposts. AWS Outposts utilizza lo stesso hardware delle Regioni AWS pubbliche per portare i servizi, l'infrastruttura e i modelli operativi AWS On-Premise. Con RDS in Outposts, è possibile eseguire il provisioning di istanze DB gestite vicino alle applicazioni aziendali che devono essere eseguite in locale. Per ulteriori informazioni, consulta Utilizzo di Amazon RDS su AWS Outposts.

Istanze DB

Una istanza database è un ambiente di database isolato in esecuzione in AWS Cloud. L'istanza database rappresenta l'elemento di base di Amazon RDS.

L'istanza database può contenere uno o più database creati dall'utente. Puoi accedere all'istanza database utilizzando gli stessi strumenti e applicazioni che utilizzi con un'istanza database autonoma. Puoi creare e modificare un'istanza database utilizzando AWS Command Line Interface, l'API Amazon RDS o la AWS Management Console.

Motori database

Un Motore database è il software di database relazionale specifico in esecuzione nell'istanza database. Attualmente Amazon RDS supporta i seguenti motori:

  • MySQL

  • MariaDB

  • PostgreSQL

  • Oracle

  • Microsoft SQL Server

Ciascun motore di database supporta funzionalità specifiche e ogni versione di un motore di database può includere funzionalità specifiche. Inoltre, ogni motore di database dispone di un set di parametri in un gruppo di parametri database in grado di controllare il comportamento dei database gestiti.

Classi di istanze database

La classe di istanza database determina la capacità di calcolo e di memoria di un'istanza database. Una classe di istanza database è costituita sia dal tipo di istanza database che dalla dimensione. Ogni tipo di istanza offre diverse capacità di calcolo, memoria e storage. Ad esempio, db.m6g è un tipo di istanza database per uso generale con processori AWS Graviton2, mentre db.m6g.2xlarge è una classe di istanza database inclusa nella classe db.m6g.

È possibile selezionare l'istanza database più adatta alle proprie esigenze. Se le tue esigenze cambiano nel tempo, potrai modificare le istanze database. Per informazioni, consulta Classi di istanze database.

Nota

Per informazioni sui prezzi delle classi di istanza database, consulta la sezione relativa ai prezzi nella pagina del prodotto Amazon RDS.

Storage delle istanze database

Amazon EBS fornisce volumi di archiviazione durevoli a livello di blocchi, che possono essere collegati a un'istanza in esecuzione. Lo storage di istanza database è disponibile nei seguenti tipi:

  • General Purpose (SSD)

  • Provisioned IOPS (PIOPS)

  • Magnetico

I tipi di storage differiscono per caratteristiche prestazionali e prezzo. È possibile personalizzare le prestazioni e i costi di storage in base alle esigenze del database.

Ciascuna istanza database ha requisiti di storage minimi e massimi in base al tipo di storage e al motore di database supportato. È importante disporre di storage sufficiente in modo che le dimensioni dei database possano aumentare. Inoltre, uno storage sufficiente garantisce che le caratteristiche per il motore database dispongano di spazio sufficiente per scrivere contenuti o registrare voci. Per ulteriori informazioni, consulta Storage delle istanze di database Amazon RDS.

Amazon Virtual Private Cloud (Amazon VPC)

Puoi eseguire un'istanza database su un VPC tramite il servizio Amazon Virtual Private Cloud (Amazon VPC). Quando utilizzi un VPC, hai il controllo completo sull'ambiente virtuale di rete. Puoi scegliere il tuo intervallo di indirizzi IP, creare sottoreti e configurare liste di routing e di controllo accessi. La funzionalità di base di Amazon RDS è la stessa indipendentemente che l'esecuzione avvenga o meno in un VPC. Amazon RDS gestisce i backup, l'applicazione di patch software, il rilevamento automatico dei guasti e il ripristino. Non è previsto alcun costo aggiuntivo per eseguire la tua istanza database in un VPC. Per ulteriori informazioni sull'utilizzo di Amazon VPC con RDS, consulta Amazon Virtual Private Cloud VPC e Amazon RDS.

Amazon RDS utilizza NTP (Network Time Protocol) per sincronizzare l'ora nelle istanze database.

AWSRegioni e zone di disponibilità

Le risorse di cloud computing Amazon sono ospitate in strutture dei data center disponibili in diverse aree nel mondo, ad esempio Nord America, Europa o Asia. La posizione di ogni data center è detta regione AWS.

Ogni regione AWS contiene diverse posizioni chiamate zone di disponibilità o AZ (Availability Zone). Ogni zona di disponibilità è progettata per rimanere isolata dai guasti che si verificano in altre zone di disponibilità. Ciascuna è progettata per fornire una connettività di rete non costosa e a bassa latenza ad altre zone di disponibilità nella stessa regione AWS. Avviando istanze in zone di disponibilità separate, potrai proteggere le tue applicazioni dai guasti di una singola posizione. Per ulteriori informazioni, consulta Regioni, zone di disponibilità e Local Zones.

Grazie a un'opzione nota come implementazione Multi-AZ, è possibile eseguire l'istanza database in varie zone di disponibilità. Quando scegli questa opzione, Amazon effettua automaticamente il provisioning e la gestione di una o più istanzee database in standby secondarie situate in una zona di disponibilità diversa. L'istanza database principale viene replicata tra le zone di disponibilità in ogni istanza database secondaria. Questo approccio consente di fornire ridondanza dei dati e supporto per il failover, eliminare blocchi I/O e ridurre al minimo i picchi di latenza durante i backup di sistema. In un'implementazione di cluster di database Multi-AZ, anche le istanze database secondarie possono gestire il traffico di lettura. Per ulteriori informazioni, consulta Implementazioni Multi-AZ per l'alta disponibilità.

Sicurezza

Un gruppo di sicurezza controlla l'accesso a un'istanza database, consentendo l'accesso agli intervalli di indirizzi IP o alle istanze di Amazon EC2 specificati.

Per ulteriori informazioni sui gruppi di sicurezza, consulta Sicurezza in Amazon RDS.

Monitoraggio di un'istanza database Amazon RDS

Esistono vari modi per tenere traccia delle prestazioni e dello stato di un'istanza database. Puoi utilizzare il servizio gratuito Amazon CloudWatch per monitorare le prestazioni e lo l’integrità di un'istanza database. I grafici delle prestazioni di CloudWatch sono mostrati nella console Amazon RDS. Puoi, inoltre, eseguire la sottoscrizione agli eventi Amazon RDS per ricevere notifiche relative a modifiche apportate a un'istanza database, snapshot DB, gruppo di parametri database o gruppo di sicurezza database. Per ulteriori informazioni, consulta Monitoraggio di parametri in un'istanza Amazon RDS.

Come utilizzare Amazon RDS

Esistono vari modi per interagire con Amazon RDS.

AWS Management Console

La AWS Management Console è una semplice interfaccia utente basata sul Web. La gestione delle istanze database dalla console non richiede alcuna programmazione. Per accedere alla console Amazon RDS, accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

Interfaccia a riga di comando

Puoi utilizzare AWS Command Line Interface (AWS CLI) per accedere all'API Amazon RDS in modo interattivo. Per installare la AWS CLI, consulta Installazione dell'interfaccia a riga di comando di AWS. Per iniziare a utilizzare la AWS CLI per RDS, consulta Riferimento AWS Command Line Interface per Amazon RDS.

Programmazione con Amazon RDS

Gli sviluppatori possono accedere a Amazon RDS in modo programmatico. Per ulteriori informazioni, consulta Documentazione di riferimento dell'API (Application Programming Interface) Amazon RDS.

Per lo sviluppo delle applicazioni, è consigliabile utilizzare uno degli SDK (Software Development Kit) AWS. Gli SDK AWS gestiscono dettagli di basso livello, ad esempio autenticazione, logica di ripetizione e gestione errori, consentendoti pertanto di concentrarti sulla logica dell'applicazione. AWS Gli SDK sono disponibili per vari linguaggi. Per ulteriori informazioni, consulta la pagina Strumenti per Amazon Web Services .

AWSIn sono inoltre disponibili librerie, codice di esempio, tutorial e altre risorse, affinché tu possa iniziare con maggiore facilità. Per ulteriori informazioni, consulta la pagina Librerie e codice di esempio.

Come vengono addebitati i costi per Amazon RDS

Quando si utilizza Amazon RDS, è possibile scegliere di utilizzare istanze database on demand o istanze database riservate. Per ulteriori informazioni, consulta Fatturazione delle istanze database per Amazon RDS.

Per informazioni sui prezzi di Amazon RDS, consulta la pagina del prodotto Amazon RDS.

Fasi successive

Nella sezione precedente viene fornita un'introduzione ai componenti dell'infrastruttura di base offerti da RDS. Cosa potrai fare dopo?

Nozioni di base

Crea un'istanza database utilizzando le istruzioni in Nozioni di base su Amazon RDS.

Argomenti specifici per i motori di database

Puoi consultare le informazioni specifiche per un determinato motore di database nelle sezioni indicate di seguito.