Ottimizzazione dei costi: database e analisi intelligente

Last reviewed 2024-06-03 UTC

Questo documento nel Framework dell'architettura Google Cloud fornisce suggerimenti per aiutarti a ottimizzare i costi dei tuoi database carichi di lavoro di analisi in Google Cloud.

Le indicazioni in questa sezione sono rivolte ad architect, sviluppatori e Amministratori responsabili del provisioning e della gestione di database e analisi carichi di lavoro con scale out impegnativi nel cloud.

Questa sezione include consigli sull'ottimizzazione dei costi per: prodotti:

Cloud SQL

Cloud SQL è un database relazionale completamente gestito per MySQL, PostgreSQL e SQL Server.

Monitoraggio dell'utilizzo

Esamina le metriche nella dashboard di monitoraggio, e verificare che il deployment soddisfi i requisiti del carico di lavoro.

Ottimizza le risorse

Di seguito sono riportati alcuni suggerimenti per aiutarti a ottimizzare Cloud SQL di risorse:

  • Progetta una strategia ad alta disponibilità e ripristino di emergenza in linea con l'RTO (Recovery Time Objective) e il Recovery Point Objective (RPO). A seconda del carico di lavoro, ti consigliamo quanto segue:
  • Esegui il provisioning del database con la capacità di archiviazione minima richiesta.
  • Per scalare automaticamente la capacità di archiviazione man mano che i dati aumentano, abilita la di aumento automatico dello spazio di archiviazione funzionalità.
  • Scegli un tipo di archiviazione, unità a stato solido (SSD) o hard disk (HDD), appropriato per il tuo caso d'uso. SSD è il modo più efficiente conveniente per la maggior parte dei casi d'uso. HDD potrebbe essere adatto set di dati di grandi dimensioni (>10 TB) che non sono sensibili alla latenza o a cui si accede con minore frequenza.

Ottimizza le tariffe

Valuta l'acquisto sconti per impegno di utilizzo per carichi di lavoro con esigenze prevedibili in termini di risorse. Puoi risparmiare il 25% dell'offerta per un impegno di 1 anno e il 52% per un impegno di 3 anni.

Spanner

Spanner è un database cloud-native, a scalabilità illimitata e a elevata coerenza che offre con una disponibilità del 99,999%.

Monitoraggio dell'utilizzo

Di seguito sono riportati alcuni consigli per aiutarti a monitorare l'utilizzo del tuo Risorse Spanner:

  • Monitora il deployment e configura il conteggio dei nodi in base Suggerimenti per la CPU.
  • Imposta avvisi sui tuoi deployment per ottimizzare le risorse di archiviazione. A determinare la configurazione appropriata, consulta le limiti per nodo.

Ottimizza le risorse

Di seguito sono riportati alcuni consigli per aiutarti a ottimizzare Risorse Spanner:

  • Eseguire carichi di lavoro più piccoli su Spanner a costi molto inferiori eseguendo il provisioning delle risorse con unità di elaborazione (PU) rispetto ai nodi. un nodo Spanner è uguale a 1000 PU.
  • Migliora le prestazioni di esecuzione delle query utilizzando ottimizzatore delle query.
  • Costruire istruzioni SQL utilizzando best practice per la creazione di piani di esecuzione efficienti.
  • Gestisci l'utilizzo e le prestazioni dei deployment Spanner utilizzando Gestore della scalabilità automatica lo strumento a riga di comando gcloud. Lo strumento monitora le istanze, aggiunge o rimuove i nodi automaticamente aiuta a garantire che le istanze rimangano all'interno della CPU consigliata limiti di archiviazione.
  • Proteggiti da cancellazioni o scritture accidentali utilizzando recupero point-in-time (PITR). Database con periodi di conservazione delle versioni più lunghi (in particolare database che sovrascrivono spesso i dati) utilizzano più risorse di sistema e necessitano nodi.
  • Rivedi la tua strategia di backup e scegli tra le seguenti opzioni:
    • Backup e ripristino
    • Esporta e importa

Ottimizza le tariffe

Quando decidi la località dei nodi Spanner, considera la differenze di costo tra le regioni Google Cloud. Ad esempio, un nodo implementato nella regione us-central1 ha un costo orario notevolmente inferiore rispetto a un nodo nella regione southamerica-east1.

Bigtable

Bigtable è uno spazio di archiviazione NoSQL cloud-native a colonne larghe per una bassa latenza su larga scala carichi di lavoro con scale out impegnativi.

Monitoraggio dell'utilizzo

Di seguito sono riportati alcuni consigli per aiutarti a monitorare l'utilizzo del tuo Risorse Bigtable:

  • Analizza metriche di utilizzo per identificare le opportunità di ottimizzazione delle risorse.
  • Identifica hotspot e tasti di scelta rapida nel cluster Bigtable utilizzando Key Visualizer strumento di diagnostica.

Ottimizza le risorse

Di seguito sono riportati alcuni consigli per aiutarti a ottimizzare Risorse Bigtable:

  • Per aiutarti a garantire Utilizzo di CPU e disco che offre un equilibrio tra latenza e capacità di archiviazione, regolare il conteggio dei nodi e le dimensioni del cluster Bigtable.
  • Mantenere le prestazioni al minor costo possibile la scalabilità in modo programmatico il tuo cluster Bigtable per regolare automaticamente il conteggio dei nodi.
  • Valuta la soluzione più conveniente tipo di archiviazione (HDD o SSD) per il tuo caso d'uso, in base alle seguenti considerazioni:

    • L'archiviazione HDD costa meno di quella SSD, ma ha prestazioni inferiori.
    • L'archiviazione SSD ha un costo maggiore di quella HDD, ma è più veloce e un rendimento prevedibile.

    I risparmi sui costi derivanti dall'HDD sono minimi rispetto al costo nodi nel tuo cluster Bigtable, a meno che non archivi quantità di dati. L'archiviazione HDD a volte è appropriata per set di dati di grandi dimensioni (>10 TB) non sensibili alla latenza o a cui si accede raramente.

  • Rimuovi i dati scaduti e obsoleti utilizzando garbage collection.

  • Per evitare gli hotspot, applica le best practice per progettazione della chiave di riga.

  • Progetta una soluzione conveniente piano di backup in linea con l'RPO.

  • Per ridurre l'utilizzo del cluster e il numero di nodi, valuta la possibilità di aggiungere cache di capacità per le query memorizzabili nella cache utilizzando Memorystore.

Letture aggiuntive

BigQuery

BigQuery è un data warehouse multi-cloud serverless, a scalabilità elevata ed economico progettato per l'agilità aziendale.

Monitoraggio dell'utilizzo

Di seguito sono riportati alcuni consigli per aiutarti a monitorare l'utilizzo del tuo Risorse BigQuery:

  • Visualizza i costi di BigQuery segmentati per progetti e utenti. Identificare le query più costose e ottimizzarle.
  • Analizza utilizzo slot tra progetti, job e prenotazioni utilizzando INFORMATION_SCHEMA e tabelle di metadati.

Ottimizza le risorse

Di seguito sono riportati alcuni consigli per aiutarti a ottimizzare Risorse BigQuery:

  • Configura a livello di set di dati, tabella o partizione scadenza per i dati, in base alla tua strategia di conformità.
  • Limitare i costi delle query limitando il numero di byte fatturati per query. Per evitare incidenti errori umani, consentono il controllo dei costi a livello di utente e di progetto.
  • Esegui query solo sui dati di cui hai bisogno. Evita scansioni complete delle query. Per esplorare e comprendere i dati la semantica, utilizza la formula senza costi anteprima dei dati le opzioni di CPU e memoria disponibili.
  • Per ridurre i costi di elaborazione e migliorare le prestazioni, partizione e cluster le tabelle, se possibile.
  • Filtra query il prima possibile e il più spesso possibile.
  • Quando elabori dati da più origini (come Bigtable, Cloud Storage, Google Drive e Cloud SQL), per evitare la duplicazione dei dati, utilizzando modello dei dati ad accesso federato ed eseguire query sui dati direttamente dalle origini.
  • Sfrutta le Backup di BigQuery anziché duplicare i dati. Consulta Scenari di ripristino di emergenza per i dati.

Ottimizza le tariffe

Di seguito sono riportati alcuni consigli per aiutarti a ridurre le tariffe di fatturazione per il tuo Risorse BigQuery:

  • Valuta il modo in cui modifichi i dati e sfrutta le risorse a lungo termine prezzi di archiviazione.
  • Esamina le differenze tra costo fisso e on demand pricing, e scegli un'opzione che soddisfa le tue esigenze.
  • Valutare se è possibile utilizzare il caricamento in batch anziché inserimenti di flussi di dati per i tuoi flussi di lavoro dati. Usa inserimento di flussi di dati se i dati sono stati caricati BigQuery viene utilizzato immediatamente.
  • Per aumentare le prestazioni e ridurre il costo di recupero dei dati, utilizza risultati delle query memorizzati nella cache.

Letture aggiuntive

Dataflow

Dataflow è un servizio serverless veloce e conveniente per le operazioni di flusso e batch unificate l'elaborazione dei dati.

Monitoraggio dell'utilizzo

Di seguito sono riportati alcuni consigli per aiutarti a monitorare l'utilizzo del tuo Risorse Dataflow:

  • Prevedi il costo dei job Dataflow eseguendo piccoli esperimenti di carico, individuando le prestazioni ottimali del job ed estrapolando il fattore di velocità effettiva.
  • Ottieni una maggiore visibilità sulla velocità effettiva e sull'utilizzo della CPU utilizzando dashboard di osservabilità.
  • Dopo aver creato un job, visualizza il costo stimato delle risorse il job utilizza e imposta avvisi per ricevere notifiche quando le risorse supera le soglie specificate. Per ulteriori informazioni, vedi Monitoraggio dei costi di Dataflow.

Ottimizza le risorse

Di seguito sono riportati alcuni consigli per aiutarti a ottimizzare Risorse Dataflow:

  • Prendi in considerazione Dataflow Prime per elaborare i big data in modo efficiente.
  • Per le pipeline batch, riduci le risorse (CPU, memoria l'archiviazione su Persistent Disk) utilizzata sulle VM worker utilizzando Dataflow Shuffle.
  • Riduci i costi di elaborazione batch utilizzando Programmazione flessibile delle risorse (FlexRS) per le pipeline in batch con scalabilità automatica. FlexRS utilizza la programmazione avanzata, Dataflow Shuffle e una combinazione di modelli per ridurre i costi delle pipeline batch.
  • Per una scalabilità automatica più reattiva e per ridurre il consumo di risorse, Motore di flussi di dati che trasferisce l'esecuzione della pipeline dalle VM worker alla Backend del servizio Dataflow.
  • Se la pipeline non ha bisogno dell'accesso da e verso internet e altre Disabilita gli indirizzi IP pubblici nelle reti Google Cloud. Disattivazione di internet in corso... ti aiuta a ridurre i costi di rete e a migliorare la sicurezza della pipeline.
  • Per i carichi di lavoro che possono tollerare record duplicati, puoi ridurre i costi utilizzando la modalità flusso di dati "Almeno una volta". Per ulteriori informazioni, vedi Almeno una volta in modalità flusso: risparmia fino al 70% per i carichi di lavoro ETL in modalità flusso.
  • Per le pipeline che elaborano set di dati di grandi dimensioni, puoi ridurre il numero i worker (VM Compute Engine) richiesti in modo dinamico aumentando il numero di thread paralleli su ogni worker. Per ulteriori informazioni le informazioni, vedi Scalabilità dinamica dei thread.

Dataproc

Dataproc è un servizio Apache Spark e Apache Hadoop gestito per l'elaborazione batch, di query, flussi di dati e machine learning.

Di seguito sono riportati i consigli per aiutarti a ottimizzare il costo del tuo Risorse Dataproc:

Passaggi successivi