Trace Id is missing
Passa al contenuto principale

Confronto tra aumento delle risorse e della capacità

Introduzione alla scalabilità dei database nel cloud computing.

Dati ovunque: cosa si intende per scalabilità

La scalabilità nel cloud computing è la possibilità di aumentare o ridurre in modo semplice e rapido le dimensioni o la potenza di una soluzione IT o di una risorsa. Benché il termine scalabilità possa fare riferimento alla capacità di qualsiasi sistema di gestire una quantità crescente di lavoro, quando si parla di aumento delle risorse o della capacità ci si riferisce spesso a database e dati di grandi dimensioni.

La scalabilità dei database è essenziale per gli sviluppatori di app moderne. Supponiamo che una nuova app abbia successo e che la domanda per tale app cresca da qualche utente a milioni di utenti in tutto il mondo. Una delle capacità più importanti per aiutare gli sviluppatori a soddisfare la domanda e ridurre al minimo il tempo di inattività consiste nella possibilità di eseguire il dimensionamento in modo efficiente.

Questa conversazione sul confronto tra aumento della capacità e delle risorse è incentrata sul modo in cui la scalabilità consente di adattarsi e gestire il volume elevato e la vasta gamma di dati, i volumi di dati in continua evoluzione e i criteri variabili dei carichi di lavoro, generati da cloud, dispositivi mobili, social media e Big Data.

Una donna che fa una presentazione mentre altre persone sedute sulla sedia la ascoltano

Confronto tra aumento della capacità e delle risorse

Al livello più semplice, la scalabilità dei database può essere divisa in due tipi:

Aumento delle risorse, ovvero aumento o riduzione della capacità di calcolo o dei database in base alla necessità, mediante la modifica dei livelli di prestazioni o mediante l'uso di pool di database elastici per l'adeguamento automatico alle esigenze del carico di lavoro.

Aumento della capacità, ovvero aggiunta di più database o divisione di un database di grandi dimensioni in nodi più piccoli, mediante un approccio di partizionamento dei dati che può essere gestito in modo più semplice e rapido tra i server.

Aumento delle risorse

L'aumento delle risorse viene usato quando devi reagire rapidamente per risolvere un problema di prestazioni che non può essere risolto mediante le tecniche classiche per l'ottimizzazione dei database, ad esempio per modifiche alle query o indicizzazione. L'aumento delle risorse risulta utile per gestire i picchi nei carichi di lavoro nel caso in cui il livello di prestazioni corrente non riesca a soddisfare tutte le domande. L'aumento delle risorse ti permette di aggiungere più risorse per gestire i picchi dei carichi di lavoro. Quando le risorse non sono più necessarie, la riduzione delle risorse ti permette quindi di tornare allo stato originale e risparmiare sui costi del cloud.

Aumenta le risorse quando:

Aumento della capacità

Gli sviluppatori di app iniziano a valutare l'aumento della capacità solo quando non possono ottenere risorse sufficienti per i propri carichi di lavoro, anche se usano i livelli più elevati di prestazioni. Grazie all'aumento della capacità, i dati vengono suddivisi in più database, o partizioni, nei server e le risorse di ogni partizione possono essere aumentare o ridotte in modo indipendente.

In che modo il partizionamento dei dati migliora la scalabilità? Quando si aumentano le risorse di un database singolo aggiungendo risorse quali macchine virtuali, il database raggiungerà a un certo punto un limite dell'hardware fisico. Poiché ogni partizione di dati è ospitata in un server separato, se dividi i dati in più partizioni potrai aumentare la capacità di un sistema quasi senza limitazioni.

Alcuni tipi di tecnologie di database, in particolare database non relazionali o database NoSQL, vengono sviluppate con funzionalità esclusive per l'aumento della capacità per i dati mediante partizione di database, in modo da consentire la gestione di dati di grandi dimensioni, non correlati, indeterminati o in rapida evoluzione.

Alcuni servizi di database relazionali (SQL) che offrivano inizialmente servizi per l'aumento o la riduzione delle risorse stanno iniziando a offrire opzioni interessanti per adeguarsi ai vantaggi a livello di scalabilità offerti dai database non relazionali. I servizi con iperscalabilità come Database SQL di Microsoft Azure - Hyperscale e Database PostgreSQL di Azure - Hyperscale consentono agli utenti di dimensionare rapidamente le risorse di archiviazione fino a 100 TB, forniscono architettura flessibile nativa del cloud per consentire l'aumento delle risorse di archiviazione in base alla necessità e abilitano backup quasi immediati e ripristini veloci dei database in pochi minuti.

Aumenta la capacità quando:

Scalabilità automatica

La scalabilità automatica è il processo di associazione automatica e dinamica di risorse per soddisfare i requisiti di prestazioni di un sistema. Con l'aumentare del volume di lavoro, è possibile che le app necessitino di risorse aggiuntive per mantenere i livelli di prestazioni necessari o soddisfare la domanda crescente. Se la domanda rallenta e le risorse aggiuntive non sono più necessarie, è possibile risparmiare sulla spesa per il cloud usando un servizio automatico per la deallocazione delle risorse inutilizzate.

La scalabilità automatica sfrutta la flessibilità degli ambienti ospitati nel cloud. Attenua il sovraccarico di gestione riducendo la necessità da parte degli operatori del sistema di prendere costantemente decisioni sull'aggiunta o sulla rimozione di risorse o sul controllo delle prestazioni del sistema.

Benché siano disponibili due modalità principali per il dimensionamento delle app, ovvero aumento delle risorse o della capacità, l'aumento delle risorse è meno comune perché richiede spesso la non disponibilità temporanea del sistema durante la ridistribuzione.

La scalabilità automatica è più comune per l'aumento della capacità perché comporta semplicemente l'aggiunta o la rimozione di istanze di una risorsa, mentre l'esecuzione dell'app continua senza interruzioni durante il provisioning di nuove risorse. In caso di riduzione della domanda, le risorse possono essere arrestate facilmente senza tempi di inattività e deallocate.

Molti provider di sistemi basati sul cloud, tra cui Microsoft Azure, supportano l'aumento automatico della capacità.

  • Un database è una qualsiasi raccolta di informazioni correlate archiviate e organizzate in modo da semplificarne la gestione e l'accesso. Nuovi dati e tipi di dati vengono generati a ritmo elevato e risulta quindi complesso garantire che tali dati siano sempre organizzati, accessibili e sicuri. I sistemi di gestione di database, che includono un livello di strumenti di gestione, vengono spesso usati per gestire volumi elevati di dati.

    Nuovi tipi di database e nuove tecnologie emergono continuamente per adattarsi al volume e alla vasta gamma di dati generati da cloud, dispositivi mobili, social media e Big Data.

    Altre informazioni sui database

  • I database NoSQL, definiti spesso non relazionali o "non solo" SQL, sono un set diversificato di tecnologie di database che gestiscono l'archiviazione e il recupero dei dati in modo diverso rispetto ai database relazionali tradizionali (SQL).

    I database NoSQL non richiedono uno schema predefinito e possono usare più modelli di dati. Sono quindi estremamente efficaci per la gestione di volumi elevati di dati non strutturati e il dimensionamento di progetti di database per Big Data.

    Scopri di più sui database NoSQL

  • PostgreSQL è un database open source solido compatibile con query relazionali e non relazionali e noto per l'affidabilità e l'integrità dei dati. PostgreSQL è ampiamente usato in campi quali servizi finanziari, produzione, sistemi di informazioni geografiche governative e tecnologia Web. Gli sviluppatori creano app con PostgreSQL, mentre gli amministratori si affidano a PostgreSQL per la protezione dei dati.

    Altre informazioni su PostgreSQL

  • La memorizzazione nella cache è una tecnica comune usata da sviluppatori e professionisti IT per migliorare le prestazioni e la scalabilità del sistema. La memorizzazione nella cache copia temporaneamente i dati usati di frequente in una risorsa di archiviazione rapida vicina all'app. Se questa risorsa di archiviazione rapida dei dati si trova più vicina all'app rispetto all'origine iniziale, la memorizzazione nella cache può migliorare significativamente i tempi di risposta per le app client fornendo i dati più rapidamente. Gli sviluppatori spesso progettano app affinché memorizzino nella cache i dati elaborati e quindi riconvertono la cache per gestire le richieste più velocemente rispetto alle query su database standard.

    Altre informazioni sulla memorizzazione nella cache

  • Il partizionamento dei dati è un tipo di partizionamento che consente di dividere un database di grandi dimensioni in database più piccoli, che possono essere gestiti in modo più semplice e rapido tra server.

    Altre informazioni sul partizionamento orizzontale del database

  • Una piattaforma distribuita come servizio, spesso indicata come PaaS (Platform as a Service), è un servizio fornito da un provider di servizi cloud che offre un ambiente on demand per lo sviluppo, il test, la distribuzione e la gestione di app. Una soluzione PaaS semplifica e accelera la creazione di app Web o per dispositivi mobili da parte degli sviluppatori, senza che sia necessario gestire la configurazione o la gestione dell'infrastruttura sottostante di server, risorse di archiviazione, risorse di rete e database necessari per gli sviluppatori.

    Scopri di più su PaaS

Esplora la scalabilità cloud con Azure

Scopri un approccio completo per l'aumento delle risorse o della capacità, ottimale per il tuo scenario in ambienti locali, multi-cloud e perimetrali. La famiglia Azure di servizi di database offre diverse opzioni di database relazionali, NoSQL e in memoria completamente gestiti, che includono motori proprietari e open source, per soddisfare le esigenze degli sviluppatori di app moderne.

Risparmia tempo e denaro con la gestione automatizzata dell'infrastruttura, incluse soluzioni di automazione per scalabilità, disponibilità e sicurezza.

Persone che parlano e portatili aperti

Prodotti e servizi correlati

Azure SQL

Famiglia di database cloud SQL che offre opzioni flessibili per la migrazione, la modernizzazione e lo sviluppo di app.

Azure Cosmos DB

Database NoSQL veloce con API aperte per qualsiasi scala.

Azure PostgreSQL

PostgreSQL completamente gestito, intelligente e scalabile.

Database SQL di Azure

SQL intelligente gestito sul cloud.

Istanza gestita di SQL di Azure

Istanza gestita, sempre aggiornata di SQL sul cloud.

SQL Server in macchine virtuali

Esegui la migrazione dei carichi di lavoro di SQL Server al cloud con il costo totale di proprietà più basso disponibile.

Database di Azure per MySQL

Database MySQL scalabile e completamente gestito.

Azure Maria DB

Servizio di database MariaDB gestito per gli sviluppatori di app.

Cache di Azure per Redis

Accelera le applicazioni con la memorizzazione nella cache a velocità effettiva elevata e bassa latenza.

Possiamo iniziare quando vuoi a configurare il tuo account gratuito