Il cloud computing è sempre più utilizzato in tutte le aziende per sfruttare tutte le funzionalità offerte da questa tecnologia.
Consente la disponibilità on-demand di potenza di calcolo, database, archiviazione, applicazioni e altre risorse tramite Internet, quindi non è necessario spendere molti soldi per acquistare server potenti o creare i tuoi data center.
Database as a Service (DBaaS) è un servizio di cloud computing che fornisce agli utenti l'accesso a un database senza la necessità di configurare hardware fisico, installare software o configurarlo. Tutte queste attività amministrative e di manutenzione sono gestite dal provider cloud in modo che tutto ciò che l'utente deve fare sia utilizzare il database.
La domanda è:qual è la migliore soluzione DBaaS? Sfortunatamente, non esiste una risposta semplice, quindi in questo blog esamineremo le caratteristiche principali dei diversi provider DBaaS per PostgreSQL.
Amazon RDS per PostgreSQL
Amazon RDS per PostgreSQL è uno dei maggiori provider che offre servizi di database nel cloud. Con questa soluzione DBaaS puoi gestire e amministrare facilmente i tuoi database nel cloud.
Caratteristiche principali
Secondo il sito web ufficiale, le caratteristiche principali sono:
- Parametri preconfigurati che rendono l'implementazione un compito facile
- Monitoraggio e metriche
- Notifiche di eventi del database
- Applicazione automatica delle patch del software
- Utilizzo generico (SSD):fornisce una linea di base coerente di 3 IOPS per GB di cui è stato eseguito il provisioning e offre la possibilità di aumentare fino a 3.000 IOPS.
- Provisioned IOPS (SSD):puoi effettuare il provisioning fino a 64 TB di storage e 80.000 IOPS per istanza di database.
- Backup automatici
- Istantanee del database
- Distribuzioni multi-AZ
- Leggi le repliche
- Crittografia database e backup
- Reti virtuali private
- Funzionalità PostgreSQL supportate come PostGIS, dizionari di ricerca di testo completo, HStore, tipi di dati JSON e pg_stat_statements
- Wrapper di dati stranieri
- Caratteristiche principali del motore PostgreSQL
Prezzi
Utilizzando questo prodotto, pagherai solo per ciò che usi e non è previsto un costo minimo. Puoi stimare la tua fattura mensile utilizzando AWS Pricing Calculator. Esistono due tipi di istanze:
- Istanze database on demand :ti consente di pagare per la capacità di calcolo in base all'ora in cui l'istanza database viene eseguita dal momento in cui viene avviata fino a quando un'istanza database viene interrotta o eliminata, senza impegni a lungo termine. Questo ti libera dai costi e dalle complessità di pianificazione, acquisto e manutenzione dell'hardware e trasforma quelli che sono comunemente grandi costi fissi in costi variabili molto più piccoli.
- Istanze riservate :ti dà la possibilità di prenotare un'istanza database per un periodo di uno o tre anni e, a sua volta, ricevere uno sconto significativo rispetto al prezzo dell'istanza on demand per l'istanza database. Le istanze riservate di Amazon RDS offrono flessibilità di dimensione per il motore di database PostgreSQL. Il prezzo non copre i costi di archiviazione o I/O.
Per ulteriori informazioni, puoi controllare la sezione Prezzi di Amazon RDS.
Amazon Aurora per PostgreSQL
Amazon Aurora è un database relazionale compatibile con MySQL e PostgreSQL creato per il cloud. Secondo il sito Web di AWS, Amazon Aurora è tre volte più veloce dei database PostgreSQL standard e fornisce la sicurezza, la disponibilità e l'affidabilità dei database commerciali a 1/10 del costo. Indipendentemente dall'affermazione, questa non è una vera istanza PostgreSQL, solo un motore compatibile. Ma se stai pensando di eseguire PostgreSQL su Amazon, dovresti assolutamente considerarlo come una possibile alternativa. Puoi saperne di più su Aurora e come si collega a PostgreSQL qui.
Caratteristiche principali
Secondo il sito web ufficiale, le caratteristiche principali sono:
- Un throughput fino a 3 volte superiore rispetto a PostgreSQL
- Repliche di lettura a bassa latenza
- Configurazione serverless
- Endpoint database personalizzati
- Monitoraggio e riparazione delle istanze
- Distribuzioni multi-AZ con repliche Aurora
- Database globale
- Archiviazione a tolleranza di errore e autoriparazione
- Backup automatici, continui, incrementali e ripristino point-in-time
- Isolamento della rete
- Autorizzazioni a livello di risorsa
- Crittografia
- Facile da usare
- Monitoraggio e metriche
- Applicazione automatica delle patch del software
- Notifiche di eventi del database
- Clonazione rapida del database
- Avvio/Arresto database
Prezzi
Simile ad Amazon RDS, qui pagherai in base al consumo senza commissioni anticipate. Non è prevista una tariffa minima. Esistono tre tipi di istanze:
- Istanza on demand :ti consente di pagare il tuo database ogni ora dall'avvio di un'istanza database fino al suo arresto o eliminazione, senza impegni a lungo termine o costi anticipati. Ciò ti libera dal costo e dalla complessità della pianificazione e dell'acquisto di capacità del database prima delle tue esigenze. Il prezzo on demand ti consente di pagare in base al consumo ed è l'ideale per lo sviluppo, i test e altri carichi di lavoro di breve durata.
- Senza server :la capacità del database aumenta o diminuisce automaticamente per soddisfare le esigenze del carico di lavoro dell'applicazione e si spegne durante i periodi di inattività, risparmiando denaro e tempo di amministrazione. Paghi per l'archiviazione del database, oltre alla capacità del database e all'I/O consumato dal database mentre è attivo.
- Istanze riservate :È appropriato per carichi di lavoro di database in stato stazionario e offre risparmi significativi rispetto a On-Demand. Le istanze riservate per un anno offrono sconti fino al 45% e le istanze riservate per tre anni offrono sconti fino al 66% rispetto a On-Demand. Ti impegni per l'intera durata del periodo di Istanza riservata e paghi una tariffa anticipata e una tariffa oraria scontata come mostrato di seguito. Ti verrà addebitata ogni ora del termine, indipendentemente dal fatto che si sia verificato un qualsiasi utilizzo.
Per ulteriori informazioni, puoi consultare la sezione Prezzi di Amazon Aurora.
Google Cloud SQL per PostgreSQL
Cloud SQL di Google fornisce un servizio di database completamente gestito che semplifica la configurazione, la manutenzione e l'amministrazione dei database PostgreSQL nel cloud. È ospitato su Google Cloud Platform, che offre prestazioni elevate, scalabilità e fornisce un'infrastruttura per applicazioni in esecuzione in qualsiasi parte del mondo.
Caratteristiche principali
Secondo il sito web ufficiale, le caratteristiche principali sono:
- Database PostgreSQL completamente gestiti nel cloud, basati sulla piattaforma Cloud SQL di seconda generazione.
- Tipi di macchina personalizzati con un massimo di 624 GB di RAM e 96 CPU.
- Fino a 30 TB di spazio di archiviazione disponibile, con la possibilità di aumentare automaticamente le dimensioni dello spazio di archiviazione in base alle esigenze.
- Crea e gestisci istanze in Google Cloud Console.
- Istanze disponibili negli Stati Uniti, nell'UE, in Asia o in Australia.
- Dati dei clienti crittografati sulle reti interne di Google e in tabelle di database, file temporanei e backup.
- Supporto per connessioni esterne sicure con Cloud SQL Proxy o con il protocollo SSL/TLS.
- Replica dei dati tra più zone con failover automatico.
- Importa ed esporta database utilizzando file di dump SQL.
- Supporto per il protocollo client-server PostgreSQL e connettori PostgreSQL standard.
- Backup automatizzati e su richiesta.
- Clonazione dell'istanza.
- Integrazione con la registrazione e il monitoraggio della suite operativa di Google Cloud.
- Supporto per più versioni di PostgreSQL:9.6, 10, 11 e 12.
- Cloud SQL per PostgreSQL supporta molte estensioni PostgreSQL. Per un elenco completo, vedere Estensioni PostgreSQL.
Prezzi
Il prezzo di Cloud SQL per PostgreSQL è composto dai seguenti addebiti:
- Istanza :si applica solo alle istanze core condivise. Le istanze core dedicate, che possono avere fino a 96 vCPU e 416 GB di memoria, vengono addebitate in base al numero di core e alla quantità di memoria di cui dispongono. Le repliche di lettura vengono addebitate alla stessa tariffa delle istanze autonome.
- CPU e memoria :per le istanze core dedicate, scegli il numero di CPU e la quantità di memoria che desideri, fino a 96 CPU e 416 GB di memoria.
- Archiviazione e networking :Dipende dalla regione in cui si trova l'istanza. Quando il traffico di rete lascia un'istanza Cloud SQL, l'addebito applicato dipende dalla destinazione del traffico e, in alcuni casi, dal coinvolgimento di un partner. L'uscita da Internet è il traffico di rete che lascia un'istanza Cloud SQL a un client che non è un prodotto Google, ad esempio l'utilizzo di un server locale per leggere i dati da Cloud SQL.
Per ulteriori informazioni, puoi consultare la sezione Prezzi di Google Cloud SQL.
Database di Azure per PostgreSQL
Il database di Azure per PostgreSQL è un database completamente gestito come servizio con funzionalità integrate, come disponibilità elevata e intelligence. Puoi continuare a utilizzare linguaggi e framework di tua scelta senza costi iniziali. Paghi solo per quello che usi.
Caratteristiche principali
Secondo il sito web ufficiale, le caratteristiche principali sono:
- Fornitura in pochi minuti e scalabilità indipendente di elaborazione o archiviazione in pochi secondi
- Integrazione con preziose funzionalità di PostgreSQL tra cui JSONB, supporto geospaziale, indicizzazione avanzata e altro
- Decine di estensioni (come PLV8, PostGIS e TimescaleDB)
- Ridimensionamento orizzontale ad alte prestazioni su PostgreSQL utilizzando l'estensione Hyperscale (Citus)
- Suggerimenti intelligenti sulle prestazioni generati da un'analisi personalizzata del tuo database
- Utilizza la funzionalità di approfondimento sulle prestazioni delle query per monitorare e rilevare eventi di disturbo che possono ostacolare le prestazioni
- PostgreSQL completamente gestito con Azure IP Advantage
- Scopri, monitora e risolvi potenziali minacce quando si verificano con Azure Advanced Threat Protection
- Controlla l'isolamento dei dati configurando una rete virtuale
- I dati vengono automaticamente crittografati a riposo e in movimento
- Il database di Azure per PostgreSQL è conforme a HIPAA, PCI DSS, FedRAMP, ISO e altro
- Paga solo per ciò che usi
Prezzi
Esistono due tipi di prodotti a seconda del carico di lavoro:
- Server singolo : È ideale per carichi di lavoro che possono funzionare bene con il calcolo, la memoria e l'archiviazione di un singolo nodo.
- Iperscala (Citus) :è la soluzione migliore per le applicazioni che richiedono prestazioni elevate e requisiti di simultaneità e devono scalare in orizzontale PostgreSQL. Con Hyperscale (Citus) puoi sfruttare il calcolo aggregato, la memoria e l'archiviazione di un cluster di database multinodo.
Per ulteriori informazioni, puoi consultare la sezione Prezzi di Database di Azure per PostgreSQL.
Database cloud EnterpriseDB
EnterpriseDB PostgreSQL Plus Cloud Database viene utilizzato per distribuire i database PostgreSQL alle istanze del server cloud. Il database master, tutte le istanze di replica e lo storage Amazon per il database vengono eseguiti su istanze AWS di tua proprietà, mentre le console Postgres Plus Cloud Database sono di proprietà e gestite da EnterpriseDB.
Caratteristiche principali
Secondo il sito web ufficiale, le caratteristiche principali sono:
- Distribuzione semplice dei cluster di provisioning in pochi minuti
- Dashboard approfondimenti
- Ridimensionamento automatizzato e su richiesta
- Vero accesso da superutente
- Supporto plug-in personalizzato
- Ottimizzazione della configurazione di PostgreSQL
- Nessun limite a IOPS o repliche
- Ridimensiona il database fino a 624 TB
- SSD standard o storage ottimizzato per EB
- Disponibilità in più regioni
- Recupero point-in-time e streaming di log WAL
- Crittografia a riposo e in transito
- Supporto dai contributori di PostgreSQL
- Richiedi supporto per le nuove versioni
- E-mail, portale e supporto telefonico 24 ore su 24, 7 giorni su 7
Prezzi
Ci sono due versioni:
- PostgreSQL :È la versione comunitaria di PostgreSQL ed è distribuita da EnterpriseDB.
- Server avanzato Postgres Plus :È un prodotto commerciale EnterpriseDB che aggiunge funzionalità Oracle, compatibilità con database Oracle, molte funzionalità per le prestazioni (incluso un caricatore di dati ad alta velocità, Index Advisor, DynaTune, statistiche dello stato di attesa SQL), pacchetti di funzioni integrati, un monitor di aggiornamento software , strumenti di monitoraggio aziendale, SQL Performance Profiler, protezione dagli attacchi SQL Injection, toolkit per la migrazione del database e replica eterogenea con Oracle e SQL Server.
Archiviazione gratuita fino a 1 TB. Istanze riservate di un anno disponibili fino al 25% di sconto.
Il costo dell'istanza database include il costo della licenza di elaborazione e software. Archiviazione, IOPS, trasferimento dati e altri servizi sono aggiuntivi.
Per ulteriori informazioni, puoi visitare il sito Web ufficiale di EnterpriseDB.
Conclusione
Ci sono altre opzioni come ElephantSQL, Heroku o Compose, e probabilmente sono valide come quelle sopra menzionate, ma per evitare un lungo post sul blog, ci siamo concentrati sui provider DBaaS più comuni al giorno d'oggi.
È difficile dire quale soluzione DBaaS sia la migliore per te in quanto dipende dalle dimensioni dell'azienda, dai requisiti e, naturalmente, dal budget, ma speriamo che questo blog ti aiuti a conoscere le caratteristiche principali di alcune opzioni di provider e a la decisione migliore per la tua azienda.