Sommario[Nascondere][Spettacolo]
I database sono una componente chiave di ogni programma, indipendentemente dal fatto che sia ospitato localmente o nel cloud.
A causa della crescente necessità di cloud hosting, sono sempre più richiesti database relazionali basati su cloud che forniscono coerenza, affidabilità e disponibilità, oltre a supportare le implementazioni online.
Un'illustrazione di un database basato su cloud è Google Cloud Spanner.
Esaminiamo in modo approfondito Google Cloud Spanner in questo articolo, incluse tutte le sue funzionalità, casi d'uso, prezzo e altri dettagli.
Che cosa è l' Chiave di Google Cloud?
Un DBMS relazionale che adotta la metodologia NewSQL è Google Cloud Spanner. Garantisce la conformità ACID (atomicità, consistenza, isolamento e durabilità) ed è particolarmente adatto per OLTP (elaborazione delle transazioni online).
Supporta ancora l'architettura scale-out ed è molto scalabile, proprio come i sistemi NoSQL. Con un design scale-out, è semplice aggiungere più nodi a un cluster esistente per distribuire l'archiviazione e il calcolo dei dati e ottenere la scalabilità.
I vantaggi di NoSQL e NewSQL sono entrambi forniti da Google Cloud Spanner.
TrueTime, l'orologio sincronizzato a livello globale di Google, è la base della coerenza di Google Spanner. Google ha creato TrueTime, un orologio globale ampiamente distribuito e ad alta disponibilità accessibile a tutti i servizi e i server cloud di Google.
TrueTime garantisce che un timestamp appena creato, diciamo T1, sarà sempre superiore a qualsiasi timestamp T2, purché T2 sia stato generato prima di T1. Di conseguenza, True-time è in grado di produrre timestamp che crescono in modo monotono, il che significa che aumenteranno costantemente in tutto il loro dominio.
Le applicazioni possono quindi utilizzarlo per assegnare a ciascuna delle loro transazioni timestamp distintivi e crescenti. Ogni dato pubblicato su Google Cloud Spanner riceve un timestamp utilizzando TrueTime e questo timestamp è affidabile in tutto il mondo.
Ciò significa che ogni transazione conservata in Spanner avrà un timestamp speciale ad essa associato, che registra l'istante preciso in cui Spanner ha elaborato la transazione.
Con l'aiuto di questi timestamp, Google Cloud Spanner può offrire letture affidabili da qualsiasi punto del mondo senza impedire alcuna scrittura.
Inoltre, Google Cloud Spanner è in grado di fornire un rigoroso controllo della concorrenza per tutte le sue transazioni.
Sebbene Google Cloud Spanner possa aver eseguito (e/o duplicato) tutte le transazioni in più posizioni, a un utente esterno sembrano essere avvenute tutte in sequenza, una dopo l'altra. In altre parole, Google Cloud Spanner funziona come un unico database macchina per utenti esterni.
Google Cloud Spanner fornisce un ordine di timestamp globale, che le transazioni possono utilizzare per operazioni e query successive. Gli utenti dovevano decidere tra prestazioni lente + garanzie più forti OPPURE prestazioni migliori + garanzie più deboli nei precedenti sistemi di database.
Tuttavia, Google Cloud Spanner può offrire solide garanzie, elevata integrità delle transazioni e prestazioni più rapide. Gli sviluppatori dovrebbero solo preoccuparsi di assicurarsi che ciascuna delle loro transazioni sia valida e la loro logica applicativa, piuttosto che preoccuparsi di eventuali conflitti o gare tra le loro numerose transazioni.
Caratteristiche
- La maggior parte delle app è semplice da creare, integrare e testare.
- Può essere caratterizzato come un database NewSQL poiché supporta sia NoSQL che SQL, risolvendo i problemi di scalabilità e prestazioni con i database SQL convenzionali.
- La sua precisione è abbastanza grande poiché sincronizza l'ora utilizzando orologi atomici e tecnologie GPS.
- Sono supportate le transazioni tra tabelle.
- Include sofisticate funzionalità di gestione e amministrazione, inclusi backup, ripristino, possibilità di creare istanze SLA e altro ancora.
- Per le istanze locali e multiregionali, fornisce una disponibilità del 99.999%.
- Scala orizzontalmente senza intoppi con poco intralcio. Il vantaggio della scalabilità orizzontale è che quando vengono aggiunti server aggiuntivi, le prestazioni del sistema migliorano notevolmente.
- Per creare un unico ciclo di vita dei dati, offre query sui big data in tempo reale.
- In base al volume della richiesta e alla dimensione dei dati, frammenta automaticamente i dati.
- Non seleziona automaticamente un indice secondario nonostante siano supportati.
- La replica trasparente è offerta in molte configurazioni e aree geografiche.
- fornisce analisi e dati sofisticati.
- Dati provenienti da diverse applicazioni e sistemi di archiviazione sono sincronizzati.
- Sono possibili dipendenze fisiche tra le tabelle del database.
- Per il recupero continuo dei dati, offre Point-In-Time-Recovery (PITR). Inoltre, puoi recuperare i dati fino al livello del microsecondo.
- Sono incluse chiavi di crittografia gestite dal cliente (CMEK), integrazione IAM, crittografia a livello di dati e altre misure di sicurezza a livello aziendale.
Utilizzo Tipico
1. Siti di e-commerce in tutto il mondo
Ordinare prodotti, riscuotere pagamenti e aggiornare le scorte sono tutte funzioni del sistema transazionale che definiscono l'e-commerce. Grandi impronte nazionali o mondiali possono essere viste su molti siti Web di e-commerce.
Rendere i database transazionali coerenti a livello globale presenta numerosi vantaggi, tra cui garantire l'integrità dei dati e ridurre al minimo la necessità di soluzioni creative di ingegneria del software per affrontare i problemi di coerenza dei dati.
2. Elaborazione dell'analisi in tempo reale
Numerose funzionalità all'avanguardia che facilitano l'elaborazione analitica sono incluse in Google Cloud Spanner. Questi miglioramenti includono cose come una migliore velocità delle query, il partizionamento degli indici e il caricamento dei dati, tra gli altri. Ciò rende questo RDBMS un'opzione eccellente per un sistema di elaborazione analitica mondiale totalmente basato su cloud.
3. Ripristino di emergenza (DR)
La DR è cruciale ma molto difficile da mettere in atto, soprattutto se si aderisce alla pratica raccomandata di impiegare località DR lontane geografiche per salvaguardarsi dalle calamità locali. In realtà, molte aziende IT creano backup e sperano di non averne mai bisogno.
Per DR, Spanner fornisce un pratico percorso futuro. La replica dei dati in un database Spanner in una posizione distante ripristinerà un'applicazione senza la necessità di ricostruirla utilizzando i dati da un nastro di backup.
Creare nuove risorse del computer in una posizione diversa e collegarle al sistema di database Spanner di backup nel caso in cui il sito principale diventi disponibile. Grazie alla sua semplicità, il DR è ora accessibile a molti più reparti IT.
4. Ridurre al minimo l'intervento manuale aumentando i tempi di risposta
Le prestazioni di un database tipico diminuiscono quando il numero di utenti raggiunge i livelli di soglia predeterminati. Sono necessarie molte fasi per ripristinare le prestazioni, inclusa la valutazione delle misurazioni delle prestazioni e il ridimensionamento del database secondo necessità.
Poiché esiste una dimensione massima per un server, il ridimensionamento orizzontale è difficile, mentre il ridimensionamento verticale è semplice. In tali circostanze, Google Cloud Spanner può essere una scelta pratica poiché gestisce il ridimensionamento orizzontale con poco intervento.
5. Database di gioco
Sono necessarie complesse strutture di database per tenere traccia delle prestazioni e dei dati dei giocatori nei giochi online, in particolare nei giochi multiplayer. Dato che spesso richiede lo sharding, molte aziende faticano a crescere e gestire questa complessità.
Inoltre, poiché i database NoSQL possono adattarsi ai cambiamenti nel modello di dati sottostante, sono un'opzione superiore per i giochi. La ridondanza è anche una componente cruciale del software di gioco.
Poiché supporta tutte queste caratteristiche, Google Spanner è un'opzione adatta per un database di giochi. Riteniamo che dimostrando questi casi d'uso, sarai in grado di vedere quanto sia versatile Google Cloud Spanner e determinare se è adatto alla tua attività.
6. Servizi finanziari
Le restrizioni normative e le aspettative dei clienti in questo settore sono una tempesta perfetta. Le agenzie di regolamentazione, le banche e le società fintech devono comunicare continuamente e perfettamente.
Inoltre, centinaia di milioni di transazioni devono essere gestite in modo impeccabile da programmi come gateway di pagamento e online banking pur attraversando complesse procedure antifrode e conciliativa.
Per gestire questo continuo afflusso di dati in passato, i database storici dovevano essere meticolosamente riprogettati e venivano utilizzate soluzioni personalizzate instabili. La tempesta è facilmente gestibile da Google Cloud Spanner.
Limitazione
Tuttavia, presenta alcune limitazioni, inclusa l'impossibilità di gestire le visualizzazioni del database, la mancanza di autorizzazioni granulari o impostazioni dei ruoli e la necessità di alcune soluzioni alternative per utilizzare completamente tutti i nodi. Mentre fai una scelta, tieni a mente anche queste restrizioni.
Prezzi
Il costo di Spanner è semplice e prevedibile. Ti viene pagato solo lo spazio di archiviazione utilizzato dalle tabelle del database e dagli indici secondari (non pre-provisioning), lo spazio di archiviazione di backup, la quantità di uscita dalla rete e la capacità di elaborazione dell'istanza (misurata in un numero di nodi o unità di elaborazione).
Conclusione
Un prodotto davvero sorprendente, Google Spanner è un superbo esempio della straordinaria abilità tecnologica di Google.
Se Google continua a rilasciare prodotti così innovativi, presto supererà anche altri cloud-run e assumerà una posizione come concorrente.
Lascia un Commento