Sviluppare con Spanner Omni

Sviluppa applicazioni con Spanner Omni utilizzando le funzionalità di Spanner supportate. Sebbene molte funzionalità siano condivise con Spanner, Spanner Omni presenta differenze nelle librerie client, nell'interfaccia a riga di comando (CLI) e nella funzionalità della console.

Le funzionalità di sviluppo di Spanner supportate includono:

Differenze principali

Sebbene gran parte dell'esperienza di sviluppo di Spanner sia applicabile, le seguenti aree differiscono in Spanner Omni:

  • Librerie client supportate:Spanner Omni supporta le librerie client Java, Go e Python.

  • Interfaccia a riga di comando (CLI): la CLI Spanner Omni è uno strumento dedicato distinto da Google Cloud CLI. Sebbene condivida una sintassi simile, non è necessario fornire il flag --instance quando esegui i comandi.

  • Limitazioni della console:la console Spanner Omni è di sola lettura, quindi non puoi utilizzarla per modificare deployment o database.

Le seguenti funzionalità e best practice di Spanner si applicano a Spanner Omni.

Best practice e casi di utilizzo

Segui queste best practice e questi casi d'uso per progettare e ottimizzare le tue applicazioni per Spanner Omni.

  • Spanner come database per i videogiochi: utilizza la scalabilità e la coerenza di Spanner per i backend dei videogiochi.

  • Best practice per SQL: ottimizza le query per prestazioni ed efficienza. La maggior parte dei concetti si applica a Spanner Omni. Poiché Spanner Omni non supporta l'archiviazione a livelli, concetti come il push-down del predicato del timestamp potrebbero non essere applicati completamente. Inoltre, Spanner Omni non dispone di funzionalità di visualizzazione del piano di query.

Framework linguistici

Integra Spanner Omni con i framework di linguaggi più diffusi:

Hibernate ORM

Utilizza Hibernate Object-Relational Mapping (ORM) per mappare gli oggetti Java alle tabelle Spanner Omni. Per ulteriori informazioni, consulta le seguenti risorse:

GORM

Integra Spanner Omni con GORM, uno strumento di mappatura relazionale degli oggetti (ORM) per il linguaggio di programmazione Go. Per utilizzare le funzionalità di mappatura relazionale degli oggetti di GORM nelle tue applicazioni Go. Per saperne di più, consulta le seguenti risorse:

Transazioni e concorrenza

Spanner Omni supporta le seguenti funzionalità di gestione delle transazioni:

Livelli di isolamento

Scopri i diversi livelli di isolamento supportati da Spanner Omni per garantire la coerenza dei dati.

Ottimizzazione

Utilizza queste tecniche per ottimizzare il rendimento e la velocità effettiva delle transazioni.

Chiusura

Scopri come utilizzare il blocco esplicito per gestire l'accesso simultaneo ai tuoi dati.

Accesso ai dati e modifica

Accedi ai tuoi dati e modificali utilizzando i metodi Spanner standard, incluse le librerie client, la CLI e DML.

Per scoprire come le librerie client gestiscono le sessioni, consulta la sezione Sessioni. Sebbene i concetti di sessione sottostanti si applichino a Spanner Omni, supporta solo sessioni multiplexate.

Lettura dei dati

Leggi i dati da Spanner Omni utilizzando vari metodi, tra cui letture obsolete e letture dirette.

Modifica dei dati

Modifica i dati utilizzando DML, mutazioni o la CLI.

Tipi di dati

Spanner Omni supporta i seguenti tipi di dati per rappresentare i dati dell'applicazione:

Sviluppo e test

Configura l'ambiente di sviluppo e il comportamento dell'applicazione per garantire prestazioni e gestione degli errori affidabili.

Trasmettere in streaming le modifiche ai dati

Le modifiche in tempo reale di Spanner monitorano le modifiche al database, come inserimenti, aggiornamenti ed eliminazioni, quasi in tempo reale. Gestiti utilizzando DDL, acquisiscono dettagli come chiavi primarie e timestamp di commit per interi database o tabelle specifiche. Sebbene la funzionalità sia quasi identica tra Spanner e Spanner Omni, Dataflow non è supportato in Spanner Omni.

Per saperne di più, vedi:

Utilizza la ricerca a testo intero (FTS) di Spanner per cercare parole, frasi o numeri nelle tabelle. FTS legge gli ultimi dati di cui è stato eseguito il commit.

Le funzionalità principali di FTS includono:

Per utilizzare la ricerca full-text, crea indici di ricerca sulle colonne in cui vuoi eseguire la ricerca. Spanner suddivide i dati in queste colonne in singole parole. Aggiorna l'indice istantaneamente quando vengono aggiunti nuovi dati.

Le ricerche FTS offrono funzionalità avanzate oltre alla corrispondenza di testo standard, ad esempio:

La funzionalità FTS è coerente tra Spanner e Spanner Omni.

Differenze nel testo integrale in Spanner

Spanner supporta la funzionalità FTS di base presente in Spanner con le seguenti differenze:

Passaggi successivi