MongoDB Atlas è un servizio di database multi-cloud, ibrido, in tempo reale e moderno che semplifica la distribuzione e la gestione del tuo database, offrendoti ciò di cui hai bisogno per creare applicazioni globali resilienti sui provider cloud di tua scelta. Offriamo due diverse opzioni di distribuzione: Atlas Core per carichi di lavoro prevedibili e Atlas Infinite per carichi di lavoro imprevedibili e con picchi.
Entrambe le opzioni di distribuzione utilizzano la stessa interfaccia, driver e API, e le query e il codice di connessione esistenti funzionano con entrambe. La differenza sta nel modo in cui ciascuna gestisce compute e storage. Atlas Core le posiziona sullo stesso nodo, mentre Atlas Infinite le separa in layer indipendenti. Scegliere tra le due opzioni dipende dall'adattabilità al carico di lavoro, offrendo agli sviluppatori la flessibilità di eseguire l'opzione di distribuzione adatta per le loro specifiche esigenze applicative.
Punti chiave
- Atlas Core supporta l'intero set di funzionalità di Atlas ed è eseguito su Amazon Web Services (AWS), Microsoft Azure e Google Cloud nei livelli Free, Flex e Dedicated.
- Ora in public preview, Atlas Infinite ti consente di scalare calcolo e archiviazione separatamente, consentendo all'archiviazione di crescere senza dover passare a un livello del cluster superiore.
- Atlas Infinite riduce i tempi di scalabilità di oltre il 96% rispetto ad Atlas Core, consentendoti di scalare calcolo e archiviazione in modo indipendente in pochi minuti, non ore.
- Atlas Infinite supporta replica set che contengono 10 volte i dati di Atlas Core, crescendo dal prototipo a un petabyte sulla stessa base con un throughput fino al 189% superiore per dollaro.
- Entrambe le opzioni di distribuzione utilizzano la stessa interfaccia, driver e API, e Atlas gestisce provisioning, patching, backup, monitoraggio e scalabilità anche in entrambe.
Sommario
- Qual è la differenza tra Atlas Core e Atlas Infinite?
- Che cos'è l'opzione di distribuzione Atlas Core?
- Che cos'è l'opzione di distribuzione Atlas Infinite?
- Come funziona la scalabilità in ciascuna opzione di distribuzione?
- Quando dovresti utilizzare Atlas Core?
- Quando dovresti utilizzare Atlas Infinite?
- Domande frequenti
Qual è la differenza tra Atlas Core e Atlas Infinite?
Sebbene le somiglianze siano molte, c'è una grande differenza: il modo in cui ciascuno fornisce elaborazione e archiviazione
- L'opzione di deployment Atlas Core accoppia calcolo e archiviazione sugli stessi nodi. I cluster Dedicated possono scalare lo storage in modo indipendente entro i limiti del loro livello corrente; superare tali limiti richiede il passaggio a un livello superiore.
- L'opzione di deployment Atlas Infinite esegue calcolo e archiviazione come layer indipendenti, in modo da poter aggiungere archiviazione senza modificare il tier del cluster.
L’opzione di implementazione adatta a te dipende dalla quantità di dati in arrivo che archivi e da quanto è difficile prevedere il volume delle query. Nessuna delle due opzioni sostituisce l’altra: si tratta di architetture complementari ottimizzate per profili di carico di lavoro diversi.
Il diagramma seguente li mette a confronto.
Atlas Core associa calcolo e archiviazione su ciascun nodo, mentre Atlas Infinite esegue calcolo e archiviazione come layer separati.
La tabella sottostante fornisce un confronto affiancato delle funzionalità.
Prendi in considerazione due team con profili di carico di lavoro molto diversi. Uno gestisce un servizio di tracciamento della flotta. I suoi dati aumentano continuamente man mano che i veicoli generano record di posizione, stato e operativi, mentre la domanda di query oscilla notevolmente durante il giorno. I picchi possono verificarsi durante i periodi di picco degli spostamenti, gli incidenti, gli eventi di smistamento o le improvvise attività dei clienti. Se il calcolo e lo storage scalano insieme, il team potrebbe dover eseguire il provisioning di risorse sufficienti per entrambi al fine di gestire i picchi di domanda, lasciando le risorse sottoutilizzate durante i periodi più calmi. Atlas Infinite è una soluzione ideale perché l'archiviazione può crescere con il set di dati, mentre il calcolo si espande per assorbire i picchi e si riduce quando la domanda diminuisce.
L'altro team gestisce un servizio di pagamento stabile e prevedibile in più regioni. I suoi modelli di traffico e i requisiti di capacità sono ben compresi e dipendono da funzionalità che Atlas Infinite non supporta ancora. Atlas Core è la scelta migliore perché le sue risorse sono completamente fornite e supporta il deployment multi-area richiesto da questo carico di lavoro.
Che cos'è l'opzione di distribuzione Atlas Core?
Atlas Core è un’architettura di cluster Atlas in cui i nodi eseguono sia il calcolo che l’archiviazione. Ogni nodo contenente dati conserva una copia dei dati su una macchina virtuale con il proprio storage.
Atlas Core è disponibile per ogni tipo di distribuzione Atlas: Cluster gratuiti, cluster Flex e livelli di cluster Dedicated su AWS, Azure e Google Cloud. Supporta l'intero set di funzionalità Atlas, inclusi i cluster multi-regione e multi-cloud.
Atlas Core copre ciò di cui il team di pagamento ha bisogno. Il loro carico è costante, quindi il livello scelto oggi continuerà a essere utile anche in futuro. Hanno anche bisogno di un cluster che possa operare in più di una regione, e Atlas Core offre il multi-regione.
Che cos'è l'opzione di distribuzione Atlas Infinite?
Atlas Infinite è un'architettura di cluster Atlas che separa il calcolo dall'archiviazione in layer indipendenti. MongoDB gestisce il layer di archiviazione e i nodi di calcolo che eseguono le tue query vi si collegano. È progettato per gestire carichi di lavoro mission-critical ad alte prestazioni.
Atlas Infinite è disponibile in public preview, quindi puoi usarlo ora, ma il prodotto e la relativa documentazione potrebbero cambiare durante il periodo di anteprima. Alcune funzionalità di Atlas non sono ancora supportate.
La preview limita inoltre dove e con quali dimensioni puoi eseguirlo. Atlas Infinite viene eseguito su AWS, nelle regioni supportate, su replica set da M10 a M60 con 128 TB di capacità di archiviazione ciascuno.
I dati del team di fleet-tracking si accumulano indipendentemente dal traffico di query, quindi su Atlas Infinite possono aggiungere spazio di archiviazione senza modificare il livello del cluster. Se si trovano già su AWS, dovranno verificare se la loro regione è supportata e se l'anteprima copre le funzionalità di cui hanno bisogno.
Ecco altre statistiche chiave:
- Ritardo nella scalabilità: Atlas Infinite riduce i tempi di scalabilità di oltre il 96% rispetto ad Atlas Core. Il calcolo e l'archiviazione si scalano automaticamente in modo indipendente in pochi minuti, non ore.
- Limite di storage: con una capacità 10 volte superiore, Atlas Infinite cresce con te, dal prototipo al petabyte, sulla stessa base. Scala secondo le tue esigenze, quando hai bisogno di maggiori prestazioni, non quando finisci lo spazio. Atlas Infinite supporta replica set che contengono 10 volte i dati dei replica set in Atlas Core.
- Pianificazione della capacità: Atlas Infinite soddisfa le tue esigenze in tempo reale mentre scali verso l'alto e verso il basso. Atlas Infinite funziona inoltre in modo più efficiente sullo stesso hardware rispetto ad Atlas Core, consentendoti di ottenere quasi il doppio delle prestazioni per dollaro.
- Riprogettazione: nessuna modifica all'applicazione richiesta. Approfitta di maggiore elasticità e scalabilità letteralmente sullo stesso database.
Atlas Infinite è un motore più capace e più performante. I test interni eseguiti con MongoDB 9.0 hanno dimostrato che Atlas Infinite offre il 189% di throughput in più per dollaro rispetto ad Atlas Core.
Come funziona la scalabilità in ciascuna opzione di distribuzione?
Su Atlas Core, il tier in cui ti trovi limita sia il calcolo che l'archiviazione. Su Atlas Infinite, l'archiviazione cresce senza modificare il tier.
Architettura: Su Atlas Core, calcolo e storage si trovano sugli stessi nodi. Su Atlas Infinite, MongoDB gestisce il layer di storage e i nodi di calcolo si connettono ad esso.
Scalabilità del calcolo: in entrambe le opzioni, il calcolo cambia quando cambia il cluster.: scegli un tier del cluster diverso. Su Atlas Core, Atlas riavvia i tuoi nodi e i cluster Dedicated rimangono disponibili durante il processo. Su Atlas Infinite, i tuoi dati non si spostano, quindi la modifica è più rapida. Atlas Infinite riduce i tempi di scalabilità di oltre il 96% rispetto ad Atlas Core, scalando in pochi minuti, non ore.
Scalabilità dell'archiviazione: Su Atlas Core, puoi scalare l'archiviazione separatamente dal calcolo sui cluster dedicati, ma solo fino al limite massimo del livello. Oltre questa soglia, si passa a un livello superiore. Su Atlas Infinite, lo spazio di archiviazione aumenta indipendentemente dal livello, senza tempi di inattività. Atlas Infinite supporta replica set che contengono 10 volte i dati dei replica set in Atlas Core, crescendo dal prototipo a un petabyte sulla stessa base.
Scalabilità orizzontale: Il partizionamento orizzontale suddivide i dati su più server, in modo che nessuno di essi li contenga tutti. Su Atlas Core, esegui il partizionamento orizzontale quando i dati si avvicinano alla capacità di storage del tier. Su Atlas Infinite, un singolo shard supporta fino a 128 TB, quindi non devi eseguire lo sharding solo per aggiungere storage. I cluster sharded non sono disponibili su Atlas Infinite durante la fase di preview.
Il team di fleet tracking esaurisce la capacità di archiviazione prima di esaurire quella di calcolo. I loro dati si accumulano continuamente, quindi su Atlas Core raggiungerebbero il massimo di archiviazione del loro tier e dovrebbero passare a un tier più grande per continuare. Su Atlas Infinite, aggiungerebbero lo storage e rimarrebbero sullo stesso tier.
Quando dovresti utilizzare Atlas Core?
Utilizza Atlas Core quando:
- Vuoi l'intero set di funzionalità di Atlas.
- È necessario avere cluster multi-regione o multi-cloud.
- Hai bisogno di cluster sharded.
Atlas Core copre anche tutto ciò che l'anteprima di Atlas Infinite esclude. Se esegui il deployment su Azure o Google Cloud, o se hai bisogno di un cluster gratuito o Flex, Atlas Core è l'opzione che lo supporta.
Il team addetto ai pagamenti utilizza Atlas Core. Il loro carico è costante, quindi la separazione di calcolo e archiviazione non cambierebbe molto per loro e dipendono da funzionalità che l'anteprima non include ancora.
Quando dovresti utilizzare Atlas Infinite?
Prendi in considerazione Atlas Infinite quando:
- Vuoi scalare in modo indipendente l'elaborazione e l'archiviazione senza ritardi di scalabilità (minuti, non ore).
- Il tuo carico di lavoro ha picchi difficili da dimensionare in anticipo.
- Desideri aumentare la capacità di archiviazione fino a 10 volte senza scalare il livello del cluster o riprogettare l'applicazione.
- Desideri quasi il doppio delle prestazioni e il 189% di throughput in più per dollaro.
- Vuoi failover e ripristino più veloci.
Atlas Infinite è adatto al team di tracciamento della flotta. I loro dati si accumulano continuamente, il volume delle loro query varia in base all'ora del giorno e su Atlas Core dovrebbero passare a un tier più grande ogni volta che superano la capacità di archiviazione.
Risorse correlate
Tipi di cluster MongoDB - Confronta i livelli dei cluster dedicati da M10 in su e scopri in che modo la scalabilità automatica regola la capacità entro i limiti impostati.
Che cos'è il modello di responsabilità condivisa? — Scopri come i compiti di sicurezza, conformità e manutenzione sono suddivisi tra te e MongoDB Atlas.
Come funziona il partizionamento orizzontale di MongoDB — Scopri come la scalabilità orizzontale distribuisce i dati su più istanze quando le esigenze di storage e throughput superano un singolo replica set.
MongoDB University – Accedi a corsi gratuiti autodidattici e percorsi di apprendimento ufficiali che coprono amministrazione del database, gestione del cluster e sviluppo di applicazioni.
Nozioni di base ed esercitazioni per sviluppatori MongoDB — Esplora le guide fondamentali sulla configurazione del database, la progettazione del document model e le operazioni CRUD di base.
