Creare e gestire posizionamenti nei dati

Questa pagina descrive come creare e gestire i posizionamenti di dati in Spanner.

Per ulteriori informazioni su come funziona il partizionamento geografico, consulta Panoramica del partizionamento geografico.

Creare un posizionamento dati

Dopo aver creato le partizioni Spanner e database, crea il tuo posizionamento.

Console

  1. Vai alla pagina Istanze nella console Google Cloud.

    Istanze

  2. Seleziona l'istanza con le partizioni create dall'utente.

  3. Seleziona il database di cui eseguire il partizionamento dei dati.

  4. Nel menu di navigazione, fai clic su Spanner Studio.

  5. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.

  6. Inserisci l'istruzione DDL CREATE PLACEMENT.

    Ad esempio, puoi eseguire il comando riportato di seguito per creare una tabella dei posizionamenti europeplacement nella partizione europe-partition:

      CREATE PLACEMENT `europeplacement` OPTIONS(instance_partitions="europe-partition");
    

    (Facoltativo) Puoi anche utilizzare il riquadro Esplora oggetti per visualizzare, cercare e interagire con i tuoi oggetti di posizionamento. Per ulteriori informazioni, vedi Esplorare i dati.

  7. Fai clic su Esegui.

gcloud

Per creare un posizionamento con il comando gcloud CLI, utilizza gcloud spanner databases ddl update.

Ad esempio, crea un posizionamento nella partizione europe-partition:

gcloud spanner databases ddl update example-db \
  --instance=test-instance \
  --ddl="CREATE PLACEMENT europeplacement OPTIONS (instance_partition='europe-partition')"

Eliminare un posizionamento dati

Non puoi eliminare un posizionamento. Devi eliminare il database per eliminare al posizionamento e ai dati associati. Per ulteriori informazioni, vedi Elimina un database.

Creare una tabella con una chiave di posizionamento

Console

  1. Nel menu di navigazione, fai clic su Spanner Studio.
  2. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.
  3. Inserisci l'istruzione DDL CREATE TABLE.

    Ad esempio, puoi creare una tabella Singers che utilizza una chiave di posizionamento per partizionare i dati del cantante:

    CREATE TABLE Singers (
      SingerId INT64 NOT NULL,
      Name STRING(MAX) NOT NULL,
      ...
      Location STRING(MAX) NOT NULL PLACEMENT KEY
    ) PRIMARY KEY (SingerId);
    

gcloud

Per creare una tabella, utilizza gcloud spanner databases ddl update.

Ad esempio, puoi creare una tabella Singers che utilizza una chiave di posizionamento per partizionare i dati del cantante:

gcloud spanner databases ddl update example-db \
  --instance=test-instance \
  --ddl="CREATE TABLE Singers ( SingerId INT64 NOT NULL, SingerName STRING(MAX) NOT NULL, Location STRING(MAX) NOT NULL PLACEMENT KEY ) PRIMARY KEY (SingerId)"

Modificare una tabella con una chiave di posizionamento

Non puoi rilasciare una chiave di posizionamento da una tabella. Inoltre, non puoi aggiungere una chiave di posizionamento a una tabella dopo la sua creazione. Tuttavia, puoi utilizzare ALTER TABLE Istruzione DDL per modificare altri campi dell'istruzione in una tabella, ad esempio l'aggiunta e l'eliminazione di colonne delle chiavi non di posizionamento.

Eliminare una tabella con una chiave di posizionamento

Prima di eliminare una tabella con una chiave di posizionamento, devi:

  1. Elimina tutte le righe nella tabella dei posizionamenti.
  2. Attendi il pulsante version_retention_period un database da trasferire. Per ulteriori informazioni, vedi Recupero point-in-time. Quindi, segui questi passaggi:

Console

  1. Nel menu di navigazione, fai clic su Spanner Studio.
  2. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.
  3. Inserisci l'istruzione DDL DROP TABLE.

    Ad esempio, trascina la tabella Singers:

    DROP TABLE Singers;
    

gcloud

Per rilasciare una tabella, utilizza gcloud spanner databases ddl update.

Ad esempio, trascina la tabella Singers:

gcloud spanner databases ddl update example-db \
  --instance=test-instance \
  --ddl="DROP TABLE Singers"

Inserire una riga in una tabella del posizionamento

Console

  1. Nel menu di navigazione, fai clic su Spanner Studio.
  2. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.
  3. Inserisci l'istruzione DDL INSERT INTO.

    Ad esempio, aggiungi un cantante, Marc Richards, al tavolo Singers e partizionalo in europeplacement:

      INSERT INTO Singers(SingerId, Name, Location)
      VALUES (1, 'Marc Richards', 'europeplacement')
    

gcloud

Per scrivere dati in una tabella, utilizza gcloud spanner rows insert.

Ad esempio, aggiungi un cantante, Marc Richards, al tavolo Singers e partizionalo in europeplacement:

gcloud spanner rows insert --table=Singers --database=example-db \
  --instance=test-instance --data=SingerId=1,SingerName='Marc Richards',Location='europeplacement'

Aggiornare una riga in una tabella dei posizionamenti

Console

  1. Nel menu di navigazione, fai clic su Spanner Studio.
  2. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.
  3. Utilizzare DML o mutazioni per aggiornare i dati in un tabella dei posizionamenti.

    Ad esempio, aggiorna il nome di singerid=1 nella tabella Singers in Catalina Smith:

    UPDATE Singers s
    SET s.name='Catalina Smith'
    WHERE s.id=1;
    

gcloud

Per aggiornare i dati in una tabella dei posizionamenti, utilizza gcloud spanner rows update.

Ad esempio, aggiorna il nome di singerid=1 nella tabella Singers in Catalina Smith:

gcloud spanner rows update --table=Singers --database=example-db \
  --instance=test-instance --data=SingerId=1,SingerName='Catalina Smith'

Spostare una riga in una tabella dei posizionamenti

Console

  1. Se non l'hai ancora fatto, crea una nuova partizione e un nuovo posizionamento.
  2. Nel menu di navigazione, fai clic su Spanner Studio.
  3. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.
  4. Utilizza DML o mutazioni per spostare i dati nella nuova partizione.

    Ad esempio, sposta singerid=1 nella tabella Singers in asiaplacement:

    UPDATE Singers s
    SET s.location='asiaplacement'
    WHERE s.id=1;
    

gcloud

Dopo aver creato la partizione e il posizionamento in cui desideri spostare i dati, utilizza gcloud spanner rows update.

Ad esempio, sposta singerid=1 nella tabella Singers in asiaplacement:

gcloud spanner rows update --table=Singers --database=example-db \
  --instance=test-instance --data=SingerId=1,Location='asiaplacement'

Eliminare una riga in una tabella dei posizionamenti

Console

  1. Nel menu di navigazione, fai clic su Spanner Studio.
  2. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.
  3. Utilizza DML o mutazioni per eliminare i dati.

    Ad esempio, elimina singerid=1 nella tabella Singers:

    DELETE FROM Singers s
    WHERE s.id=1;
    

gcloud

Per eliminare i dati, utilizza gcloud spanner rows delete.

Ad esempio, elimina singerid=1 nella tabella Singers:

gcloud spanner rows delete --table=Singers --database=example-db \
  --instance=test-instance --keys=1

Eseguire query sui dati in una tabella di posizionamenti

Console

  1. Nel menu di navigazione, fai clic su Spanner Studio.
  2. Nella pagina Spanner Studio, fai clic su Nuova scheda o utilizza la barra dell'editor.
  3. Esegui la query.

    Ad esempio, esegui una query sulla tabella Singers:

    SELECT * FROM Singers s WHERE s.SingerId=1;
    

gcloud

Per eseguire query sui dati, utilizza gcloud spanner databases execute-sql.

Ad esempio, esegui una query sulla tabella Singers:

gcloud spanner databases execute-sql example-db \
  --sql='SELECT * FROM Singers s WHERE s.SingerId=1'

Passaggi successivi