Panoramica di Bigtable Data Boost
Data Boost è un servizio di serverless computing progettato per eseguire job di lettura con portata elevata sui dati Bigtable, senza però influire sulle prestazioni dei cluster che gestiscono il traffico delle applicazioni. Ti consente di inviare query e job di lettura di grandi dimensioni utilizzando il serverless computing, mentre l'applicazione principale continua a utilizzare i nodi del cluster per il calcolo. Gli SKU e le tariffe di fatturazione per l'elaborazione serverless sono distintamente dagli SKU e dalle tariffe per i nodi di cui è stato eseguito il provisioning. Non puoi inviare richieste di scrittura o cancellazione con Data Boost.
Questo documento descrive Data Boost e quando e come utilizzarlo. Prima di leggere questa pagina, devi conoscere istanze, cluster e nodi.
A cosa serve
Data Boost è ideale per i carichi di lavoro di analisi e elaborazione dei dati. L'isolamento del traffico di analisi ed elaborazione con Data Boost consente di non dover regolare la capacità o il numero di nodi di un cluster per adattarlo ai carichi di lavoro di analisi. Puoi eseguire i job di analisi con portata elevata su un singolo cluster con Data Boost mentre il traffico delle applicazioni in esecuzione viene instradato tramite i nodi del cluster.
Di seguito sono riportati i casi d'uso ideali per Data Boost:
- Job di pipeline di esportazione o ETL pianificati o attivati da Bigtable a Cloud Storage per l'arricchimento, l'analisi, l'archiviazione dei dati, l'addestramento di modelli ML offline o l'importazione da parte dei partner di terze parti dei tuoi clienti
- ETL utilizzando uno strumento come Dataflow per le procedure di scansione breve o di lettura batch che supportano aggregazioni in-place, trasformazioni basate su regole per MDM o job di ML
- Applicazioni Spark che utilizzano il connettore Bigtable Spark per leggere i dati Bigtable
Che cosa non è adatto
Letture punto: Data Boost non è l'opzione migliore per le operazioni di lettura punto, ovvero le richieste di lettura inviate per singole righe. Sono incluse le letture dei punti raggruppate. A causa della struttura di fatturazione, molte letture di punti in una sola riga sono notevolmente più costose di una scansione lunga.
Lettura dei dati immediatamente dopo la loro scrittura: quando leggi i dati con Data Boost, potresti non leggere tutti i dati scritti nell'ultima mezz'ora. Questo è particolarmente vero se la tua istanza utilizza la replica e stai leggendo i dati scritti in un cluster in una regione diversa da quella in cui stai leggendo. Per ulteriori informazioni, consulta la pagina relativa ai token di coerenza.
Carichi di lavoro sensibili alla latenza: Data Boost è ottimizzato per la velocità effettiva, pertanto la latenza di lettura è più lenta quando utilizzi Data Boost rispetto a quando esegui la lettura utilizzando cluster e nodi. Per questo motivo, Data Boost non è adatto per i carichi di lavoro di pubblicazione di applicazioni.
Per ulteriori informazioni su carichi di lavoro, configurazioni e funzionalità non compatibili con Data Boost, consulta Limiti.
Profili app Data Boost
Per utilizzare Data Boost, invia le richieste di lettura utilizzando un profilo dell'app Data Boost anziché un profilo dell'app standard.
I profili dell'app standard ti consentono di specificare il criterio di routing e il livello di priorità per le richieste che utilizzano il profilo dell'app, nonché se sono consentite le transazioni su riga singola. Il traffico inviato utilizzando un profilo dell'app standard viene instradato a un cluster e i nodi del cluster instradano il traffico sul disco. Per scoprire di più, consulta la sezione Panoramica dei profili delle app standard.
Con un profilo dell'app Data Boost, invece, configuri un criterio di routing a cluster singolo per uno dei cluster della tua istanza e il traffico che utilizza questo profilo dell'app utilizza il serverless computing anziché i nodi del cluster.
Puoi creare un nuovo profilo dell'app Data Boost o convertire un profilo dell'app standard in modo da utilizzare Data Boost. Ti consigliamo di utilizzare un profilo dell'app separato per ogni carico di lavoro o applicazione.
Token di coerenza
I dati scritti o replicati nel cluster di destinazione più di 35 minuti prima della richiesta di lettura sono leggibili da Data Boost.
Prima di avviare un carico di lavoro Data Boost, puoi assicurarti che i dati di un determinato job di scrittura o periodo di tempo siano leggibili da Data Boost creando e utilizzando un token di coerenza. Un flusso di lavoro di esempio è il seguente:
- Scrivi alcuni dati in una tabella.
- Crea un token di coerenza.
- Invia il token in modalità
DataBoostReadLocalWrites
per determinare quando le scritture sono leggibili da Data Boost nel cluster di destinazione.
Se vuoi, puoi verificare la coerenza della replica prima di verificare la coerenza di Data Boost inviando prima un token di coerenza in modalità StandardReadRemoteWrites
.
Per ulteriori informazioni, consulta il riferimento all'API per CheckConsistencyRequest.
Quota e fatturazione
L'utilizzo di Data Boost viene misurato in unità di elaborazione serverless (SPU) e 1000 SPU = un nodo in termini di prestazioni. A differenza dei nodi di cui è stato eseguito il provisioning, le SPU vengono addebitate solo quando utilizzi Data Boost. Per ogni richiesta viene addebitato un minimo di 60 SPU-secondi e ti vengono addebitati almeno 10 SPU al secondo. Per ulteriori informazioni sui prezzi di Data Boost, consulta la pagina Prezzi di Bigtable.
La quota e le SPU ti vengono assegnate e fatturate separatamente dalla quota e dai costi per i nodi.
Metriche di idoneità
Data Boost è progettato per le scansioni con elevata velocità in transito e i carichi di lavoro devono essere compatibili per poter utilizzare Data Boost. Prima di convertire un profilo dell'app standard per l'utilizzo di Data Boost o di creare un profilo dell'app Data Boost per un workload esistente, visualizza le metriche di idoneità di Data Boost per assicurarti che la configurazione e l'utilizzo soddisfino i criteri richiesti. Ti consigliamo inoltre di esaminare le limitazioni.
Monitoraggio
Per monitorare il traffico di Data Boost, puoi controllare le metriche del tuo profilo dell'app Data Boost nella pagina Monitoraggio di Bigtable nella console Google Cloud. Per un elenco delle metriche disponibili per profilo dell'app, consulta Grafici di monitoraggio per le risorse Bigtable.
Puoi monitorare l'utilizzo delle unità di elaborazione serverless (SPU) controllando la metrica Conteggio utilizzo SPU (data_boost/spu_usage_count
) nella scheda Profilo dell'app della pagina Monitoraggio Bigtable.
Puoi anche continuare a monitorare le metriche di idoneità per il profilo dell'app dopo aver iniziato a utilizzare Data Boost.
Limitazioni
Le seguenti proprietà del carico di lavoro e configurazioni delle risorse non sono supportate per Data Boost.
- Scritture ed eliminazioni
- Traffico costituito principalmente da letture di punti (letture di righe singole)
- Più di 1000 letture al secondo per cluster
- Scansioni inverse
- Flussi di modifiche
- Priorità delle richieste
- Routing a cluster multipli
- Transazioni su riga singola
- Endpoint regionali
- Istanze HDD
- Query GoogleSQL per Bigtable
- Query di Query Builder di Bigtable Studio
- Istanze che utilizzano la crittografia CMEK
Librerie client incompatibili. Devi utilizzare il client Bigtable per Java nella versione 2.31.0 o successive.
- Per i job Dataflow che utilizzano
BigtableIO
per leggere i dati di Bigtable, devi utilizzare Apache Beam versione 2.54.0 o successive. - Per i job Dataflow che utilizzano
CloudBigtableIO
per leggere i dati Bigtable, devi utilizzarebigtable-hbase-beam
versione 2.14.1 o successive. I seguenti elementi non sono supportati per l'anteprima.
- Per i job Dataflow che utilizzano
Lettura dei dati di Bigtable da BigQuery
Passaggi successivi