Panoramica dei profili app

Un profilo di applicazione, o profilo app, memorizza le impostazioni che indicano all'istanza Bigtable come gestire le richieste in entrata da un'applicazione. Quando la tua applicazione si connette a un'istanza Bigtable, utilizza il profilo dell'app predefinito o un profilo dell'app specificato da te. Bigtable utilizza questo profilo dell'app per le richieste che l'applicazione invia tramite questa connessione.

Un profilo dell'app è un profilo dell'app standard o un profilo dell'app Data Boost, a seconda del tipo di calcolo utilizzato. Un profilo dell'app standard utilizza nodi di cluster di cui è stato eseguito il provisioning per il computing e viene in genere utilizzato per il traffico di serving delle applicazioni. Un profilo dell'app Data Boost utilizza il serverless computing, progettato per job e query di lettura con throughput elevato. Per saperne di più su Data Boost, leggi la panoramica di Data Boost.

Questa pagina descrive i profili delle app e fornisce indicazioni sul loro utilizzo.

Per esempi di codice che mostrano come utilizzare un profilo app nella tua applicazione, consulta Connettersi a un profilo app personalizzato.

Utilizzare un profilo dell'app separato per ogni carico di lavoro

Quando crei un'istanza Bigtable, viene creato automaticamente un profilo app predefinito e le relative impostazioni dipendono dal numero di cluster dell'istanza. Per sfruttare al meglio i vantaggi dei profili delle app, devi creare e utilizzare profili delle app aggiuntivi e utilizzare un profilo delle app diverso per ogni applicazione o workload.

I profili dell'app sono particolarmente importanti per le istanze con due o più cluster, ma anche se l'istanza ha un solo cluster, devi utilizzare un profilo dell'app univoco per ogni applicazione in esecuzione o per componenti diversi all'interno di una singola applicazione.

Le sezioni seguenti descrivono i vantaggi della creazione e dell'utilizzo di più profili app.

Isolamento del workload

L'utilizzo di profili app separati consente di utilizzare criteri di calcolo e routing Bigtable diversi per scopi diversi. Ad esempio, considera una situazione in cui vuoi impedire a un job di lettura batch (workload A) di aumentare l'utilizzo della CPU sui cluster che gestiscono le letture e le scritture costanti di un'applicazione (workload B). Puoi adottare uno dei seguenti approcci:

  • Crea un profilo dell'app standard per il carico di lavoro B che esegue il routing a un gruppo di cluster che esclude un cluster. Quindi, crea un profilo dell'app standard separato per il carico di lavoro A che specifica il routing a cluster singolo al cluster a cui il carico di lavoro B non invia richieste.

  • Utilizza un profilo dell'app standard, che utilizza i nodi del cluster per il computing, configurato per il routing a qualsiasi cluster per il workload B, e crea un profilo dell'app Data Boost da utilizzare su un singolo cluster con il workload A. Data Boost utilizza il serverless computing, mentre il traffico delle applicazioni utilizza i nodi del cluster per il computing.

Puoi modificare le impostazioni per un'applicazione o una funzione senza influire su altre applicazioni che si connettono agli stessi dati.

Osservabilità

L'utilizzo di profili dell'app separati per carichi di lavoro diversi ti offre una migliore visibilità sull'utilizzo di Bigtable da parte delle tue applicazioni, perché le metriche sono disponibili per profilo dell'app. Questo aumento dell'osservabilità può essere utile nei seguenti modi:

  • Puoi esaminare la latenza a livello di profilo dell'app per determinare quale applicazione potrebbe influire sulle prestazioni complessive.

  • Il monitoraggio dell'utilizzo della CPU per profilo app per un workload utilizzando un profilo app standard può aiutarti a risolvere i problemi di utilizzo della CPU o a prendere decisioni in merito alle dimensioni o alla posizione del cluster, in modo da ottimizzare l'utilizzo e ridurre i costi.

  • Le metriche a livello di profilo dell'app sono utili se devi richiedere assistenza, perché puoi condividere meglio il carico di lavoro esatto che causa un problema.

Puoi utilizzare la console Google Cloud Bigtable per visualizzare grafici separati delle metriche Bigtable per ogni profilo dell'app. Per scoprire quali metriche sono disponibili a livello di profilo, consulta la tabella in Grafici delle statistiche di sistema per le risorse Bigtable.

Profili app standard

Un profilo dell'app standard instrada il traffico ai cluster di un'istanza utilizzando i nodi dei cluster.

Routing

Un profilo dell'app standard definisce il criterio di routing utilizzato da Bigtable e controlla se sono consentite le transazioni su riga singola. Un profilo dell'app standard consente anche di specificare il livello di priorità per le richieste inviate utilizzando il profilo dell'app.

Nei cluster Enterprise Plus, puoi configurare i profili delle app standard per leggere il traffico dal livello in memoria (anteprima). Un profilo dell'app configurato per l'utilizzo in memoria utilizza il routing a cluster singolo per impostazione predefinita.

Priorità della richiesta

Puoi specificare la priorità che Bigtable deve assegnare alle richieste di dati di un profilo dell'app standard. Per esaminare i livelli di priorità disponibili, consulta Configurare le priorità delle richieste.

Profili dell'app Data Boost

Un profilo dell'app Data Boost consente di utilizzare il serverless computing di Data Boost per isolare job e query con throughput elevato dal traffico di pubblicazione delle app. Un profilo dell'app Data Boost non consente di configurare la priorità delle richieste e l'unico criterio di routing disponibile è il cluster singolo. Per saperne di più, consulta la panoramica di Data Boost.

La versione Enterprise Plus estende le funzionalità di Data Boost per supportare:

  • Query SQL isolate
  • Analisi dei dati su cluster o tabelle HDD con l'archiviazione a livelli abilitata

Modifiche al profilo dell'app

Se devi modificare la norma di routing o la priorità della richiesta per un carico di lavoro, puoi aggiornare il profilo dell'app utilizzato per il carico di lavoro. Puoi anche convertire un profilo dell'app dall'isolamento standard a quello Data Boost o da Data Boost a quello standard. La conversione di un profilo dell'app standard per l'utilizzo di Data Boost rimuove le impostazioni di priorità delle richieste dal profilo dell'app, nonché eventuali norme di routing che non sono a cluster singolo.

Le modifiche a un profilo dell'app hanno effetto immediato.

Tuttavia, in molti casi, anziché modificare un profilo app in uso, devi creare un nuovo profilo app con una configurazione diversa, come faresti per un nuovo caso d'uso, e poi modificare il codice dell'applicazione per utilizzare il nuovo profilo app. La creazione di un nuovo profilo app per apportare modifiche a un workload garantisce di non modificare inavvertitamente il profilo app per altri workload che lo utilizzano.

Se modifichi un profilo dell'app da standard a Data Boost, il tipo di compute utilizzato per il traffico del profilo dell'app viene modificato in serverless, insieme ai prezzi. Per saperne di più, consulta la panoramica di Data Boost e i prezzi di Bigtable.

Allo stesso modo, se modifichi un profilo dell'app da Data Boost a standard, il traffico inviato dal profilo dell'app inizia a utilizzare i nodi del cluster per il calcolo. Ciò significa che tutti i cluster a cui viene indirizzato il profilo dell'app devono avere nodi sufficienti a soddisfare i requisiti di utilizzo della CPU. Per saperne di più, consulta Nodi.

Per scoprire come visualizzare, creare e aggiornare i profili delle app, vedi Creare e configurare i profili delle app.

Profilo dell'app predefinito

Quando crei un'istanza, Bigtable crea automaticamente un profilo app predefinito per l'istanza. Il profilo dell'app predefinito è un profilo dell'app standard, ma puoi convertirlo in un profilo Data Boost. Se la tua applicazione non specifica un profilo app o se utilizzi la shell HBase per connetterti alla tua istanza, Bigtable utilizza le impostazioni nel profilo app predefinito.

Le impostazioni nel profilo app predefinito di un'istanza dipendono dal numero di cluster che l'istanza aveva al momento della creazione:

  • Se hai creato l'istanza con un cluster, il profilo dell'app default utilizza il routing a cluster singolo e attiva le transazioni a riga singola. In questo modo, l'aggiunta di cluster aggiuntivi in un secondo momento non modifica il comportamento delle applicazioni esistenti.
  • Se hai creato l'istanza con due o più cluster, il profilo dell'app default utilizza il routing multi-cluster verso qualsiasi cluster. Le transazioni su riga singola non sono mai consentite con il routing multi-cluster.

Il profilo dell'app predefinito non cambia quando aggiungi o rimuovi cluster. Devi aggiornare manualmente il profilo dell'app predefinito per modificarne le impostazioni. Tuttavia, come best practice, ti consigliamo di creare e utilizzare un nuovo profilo dell'app anziché modificare quello predefinito.

Profili app personalizzati

Un profilo app personalizzato è un profilo app che crei e configuri. Un'istanza può avere fino a 2000 profili di app. Ogni profilo app diverso da quello predefinito è considerato un profilo app personalizzato.

Passaggi successivi