La maggior parte delle volte (e per la maggior parte delle altre pagine), il termine “cloud database” si riferisce a un database-as-a-service basato sul cloud.
I principali vantaggi dei database cloud sono la loro accessibilità da qualsiasi luogo, la scalabilità sin dal primo giorno e l’essere progettati per garantire affidabilità e prestazioni.
Che il tuo team stia già sviluppando software sull’infrastruttura cloud o stia eseguendo la migrazione di applicazioni legacy nel cloud, è ovvio che cloud-native le offerte di database stanno crescendo in popolarità.
Le moderne piattaforme database-as-a-service consentono un accesso semplice (ma controllato) da sistemi cloud e non cloud attraverso API e driver coerenti, semplificando l’accesso alle risorse critiche. Le architetture di microservizi, in particolare, beneficiano di risorse di database centralizzate e facilmente accessibili, in quanto ci sono molte applicazioni che devono accedere e condividere i dati.
Sebbene i database SQL nel cloud siano utili in molti casi, la flessibilità degli attuali database NoSQL nel cloud migliora notevolmente l’agilità sia nella gestione dei dati che nello sviluppo del software. Non occorrono tempi di inattività per gli aggiornamenti del sistema, per il ribilanciamento dei cluster o per il provisioning di hardware più veloce o addirittura per apportare modifiche agli schemi e alle strutture.
Se pensi che NoSQL significhi nessun controllo sulla qualità dei dati, potresti voler esaminare come MongoDB riesce a fornire garanzie strutturali senza sacrificare la massima flessibilità del modello di documento.
Il vero test di un sistema di gestione dati è il modo in cui si adatta e si comporta in condizioni di carico elevato.
Qualunque sia la tecnologia di database più adatta alle tue esigenze, i servizi di database cloud sono in genere progettati per adattarsi automaticamente alla crescita dei dati e all’esterno per gestire il carico con caratteristiche prestazionali coerenti. Un buon database-as-a-service ti avviserà automaticamente su quello che non può essere regolato automaticamente, in modo che tu possa ottimizzare i tuoi indici e i modelli di accesso al fine di raggiungere i tuoi obiettivi di rendimento.
Non solo è solitamente più economico utilizzare un database cloud completamente gestito piuttosto che mantenere il proprio, ma richiede meno lavoro manuale, in modo che tu e il tuo team possiate concentrarvi sulla fornitura di valori.
Non c’è niente di peggio che avere un database mission-critical offline, tranne che perdere tutti i dati al suo interno.
I database cloud sono generalmente replicati e sottoposti a backup per impostazione predefinita, in modo che nessun punto di errore possa portare l’applicazione offline e persino incidenti catastrofici vengono mitigati da backup e disaster recovery regolari e automatizzati.
MongoDB Atlas, il database cloud MongoDB, viene replicato automaticamente e sottoposto a backup in tempo reale, consentendo il ripristino point-in-time, offrendoti un ulteriore livello di sicurezza.
I database cloud funzionano nella maggior parte dei casi come i database tradizionali e sono particolarmente utili quando si creano prodotti software che:
Le applicazioni dati che sfruttano la centralizzazione, come la modernizzazione e l’analisi legacy, sono anche candidati fantastici per l’utilizzo del database cloud.
Anche se alcuni casi d’uso sono candidati più evidenti per l’utilizzo del database cloud, casi d’uso più tradizionali, come l’elaborazione di transazioni online in tempo reale, la memorizzazione nella cache o il data warehousing funzionano altrettanto bene nel paradigma completamente gestito.
Sia che tu stia ancora pensando se un database cloud è giusto per te, o nella fase di selezione del database-as-a-service ideale per le tue esigenze, ci sono alcuni fattori chiave da prendere in considerazione:
Mentre alcuni database cloud sono disponibili su tutti i provider cloud (MongoDB Atlas viene eseguito su qualsiasi principale provider di cloud pubblico), altri sono specifici di un provider (ad es. Cloud Bigtable su Google o RDS su Amazon Web Services).
Se disponi di una impronta esistente, requisiti di compatibilità o relazioni esistenti che determinano la scelta del tuo provider di servizi cloud, le opzioni saranno il database autogestito sulle VM cloud o i prodotti database-as-a-service offerti da o su quel fornitore di servizi cloud.
Altre strategie, come [multi-cloud] (https://www.mongodb.com/cloud-database/multicloud) o hybrid-cloud potrebbero dettare l’utilizzo di più cloud pubblici e privati, il che limiterebbe le tue scelte di database ai prodotti che operano tra provider e/o in sede.
Vincolo della piattaforma.
Requisiti tecnologici.
Strategia per i provider cloud.
Potresti essere alla ricerca di un’offerta compatibile con SQL per lavorare con sistemi, processi o set di competenze esistenti o essere più interessato a un’offerta NoSQL su misura per le esigenze del tuo sistema. A volte, altre scelte nel gruppo tecnologico del tuo team, come il linguaggio di programmazione, renderanno una o più tecnologie di database più adatte alle tue esigenze, e dovresti valutare attentamente se un determinato provider o piattaforma si adatta al tuo processo di sviluppo.
È compatibile?
È portatile?
È adatto al mio caso d’utilizzo?
Hai le persone e le competenze necessarie per gestire autonomamente la giusta tecnologia di database? Se sì, i database autogestiti sulle macchine virtuali cloud possono andar bene per te. Anche così, tuttavia, dovresti prendere in considerazione le piattaforme DBaaS completamente gestite che assumono gran parte del carico di gestione per te e liberano il tuo team per progetti più avanzati.
VM vs DBaaS
Prestazione/SLAs
Scalabilità/crescita
Un altro vantaggio dei database cloud è il passaggio a prezzi basati sull’utilizzo o basati sul consumo. Ciò significa che invece di effettuare investimenti iniziali prima ancora di sapere quali saranno le tue esigenze di risorse finali, puoi iniziare in piccolo e aumentare secondo necessità .
Basato su VM, con licenza o in base all’uso
Il costo delle violazioni dei dati è solo in aumento e il controllo normativo è ai massimi storici. I database cloud gestiti si basano sulle procedure consigliate di sicurezza a più livelli, mantengono i sistemi aggiornati automaticamente e sfruttano un’ampia esperienza per implementare le configurazioni più sicure. Perché farti carico di tutto questo?
Controllo degli accessi e controllo
Procedure consigliate di sicurezza gestite e su più livelli
Le attuali offerte di database-as-a-service cloud possono offrire molto di più del semplice database stesso. MongoDB Atlas, ad esempio, include connettori compatibili con SQL, grafici e tabelle integrate e strumenti per la creazione di flussi di lavoro basati sui dati con attivatori, elaborazione senza server e altro ancora.
Analisi
Connettori
Segnalazione
verifica
Attivatori ed elaborazione
MongoDB può essere installato ed eseguito su qualsiasi provider di cloud o rete in sede come cluster di database autogestito o macchina virtuale, o su AWS, GCP o Azure utilizzando MongoDB Atlas, la nostra offerta di database-as-a-service cloud (DBaaS). L’adozione dell’opzione DBaaS comporta notevoli vantaggi, tra cui:
MongoDB Atlas, parte della piattaforma di sviluppo DaaS (Data-as-a-Service) più ampia di MongoDB, è un’alternativa potente e convincente alla gestione del proprio database NoSQL, o tradizionale, o all’utilizzo di un’offerta gestita specifica per il cloud provider.
Il modo in cui funziona un database cloud è che invece di installare, configurare e mantenere una o più istanze di database, un sistema automatizzato è in grado di fornire, gestire e ridimensionare il cluster di database sottostante per te.
I servizi di database completamente gestiti gestiscono le complessità nel mantenere un cluster costantemente disponibile e ad alte prestazioni in un modo che consente a te, lo sviluppatore, di accedervi come una semplice risorsa disponibile a livello globale.
Puoi trattare il cluster come una singola istanza di database, coperta da un modello di prezzi basato sull’utilizzo trasparente, in modo da non doverti mai preoccuparti del provisioning in eccesso o in difetto.