Neste guia de início rápido, mostramos como realizar operações básicas no Spanner usando o consoleGoogle Cloud . No início rápido, você vai:
- Crie uma instância do Spanner.
- Cria um banco de dados
- Crie um esquema.
- Inserir e modificar dados
- executar uma consulta.
Para informações sobre o custo do uso do Spanner, consulte Preços.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- 
    
    
      In the Google Cloud console, on the project selector page, select or create a Google Cloud project. Roles required to select or create a project - Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
- 
      Create a project: To create a project, you need the Project Creator
      (roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
 
- 
  
    Verify that billing is enabled for your Google Cloud project. 
- 
    
    
      In the Google Cloud console, on the project selector page, select or create a Google Cloud project. Roles required to select or create a project - Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
- 
      Create a project: To create a project, you need the Project Creator
      (roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
 
- 
  
    Verify that billing is enabled for your Google Cloud project. 
- Opcional: a API Spanner deve ser ativada automaticamente. Se não estiver, ative manualmente: Ativar a API Spanner
- 
    
    
    
    
    
  
  
  
  
  
  
  
    
    
    
    
    
    
      
      
        
        
      
      
    
    
    
    
    
  
  
  Para receber as permissões necessárias para criar instâncias e bancos de dados, peça ao administrador para conceder a você o papel do IAM de Administrador do Cloud Spanner (roles/spanner.admin) no seu projeto. 
- No console Google Cloud , acesse a página Spanner. 
- Selecione ou crie um projeto do Google Cloud , caso ainda não tenha feito isso. 
- Na página Spanner, clique em Criar uma instância provisionada. - Se você já usou o Spanner, vai aparecer a página Instâncias do Spanner em vez da página do produto. Clique em Criar instância. 
- Na página Nomeie sua instância, insira um nome, como Instância de teste. 
- O ID da instância é inserido automaticamente com base no nome dela, por exemplo, test-instance. Mude se necessário. Clique em Continuar. 
- Na página Configurar sua instância, mantenha a opção padrão Regional e selecione uma configuração no menu suspenso. - A localização geográfica em que as instâncias são armazenadas e replicadas é determinada pela configuração da instância. 
- Clique em Continuar. 
- Na página Alocar capacidade de computação, selecione Unidades de processamento (PUs) e mantenha o valor padrão de 1.000 unidades de processamento. 
- Clique em Criar. - O console Google Cloud mostra a página Visão geral da instância que você criou. 
- No console Google Cloud , acesse a página Instâncias do Spanner. 
- Clique na instância que você criou, por exemplo, Instância de teste. 
- Na página "Visão geral da instância" que aparece, clique em Criar banco de dados. 
- Para o nome do banco de dados, insira um nome, como example-db. 
- Selecione um dialeto de banco de dados. - Para informações sobre o suporte ao PostgreSQL e orientações sobre como escolher um dialeto, consulte a Interface PostgreSQL. Se você selecionou o GoogleSQL, defina o esquema no campo de texto Definir seu esquema na próxima seção deste início rápido. - A página de criação de banco de dados ficará assim:   
- Clique em Criar. - O console Google Cloud mostra a página Visão geral do banco de dados que você criou. 
- No menu de navegação, clique em Spanner Studio. 
- Na página Spanner Studio, clique em Nova guia ou use a guia do editor vazia. 
- Insira o seguinte: - GoogleSQL- CREATE TABLE Singers ( SingerId INT64 NOT NULL, FirstName STRING(1024), LastName STRING(1024), SingerInfo BYTES(MAX), BirthDate DATE ) PRIMARY KEY(SingerId);- PostgreSQL- CREATE TABLE Singers ( BirthDate TIMESTAMPTZ, SingerId BIGINT PRIMARY KEY, FirstName VARCHAR(1024), LastName VARCHAR(1024), SingerInfo BYTEA );
- Clique em Executar. - O console do Google Cloud retorna à página Visão geral do banco de dados e mostra que as atualizações do esquema estão em andamento. Quando a atualização for concluída, a página ficará assim: - GoogleSQL  - PostgreSQL  - O PostgreSQL converte o nome da tabela em letras minúsculas. 
- Na lista de tabelas da página Visão geral do banco de dados, clique na tabela "Singers". - O console Google Cloud mostra a página Esquema da tabela "Singers". 
- No menu de navegação, clique em Dados para exibir a página Dados da tabela "Singers". 
- Clique em Inserir. - O console Google Cloud mostra a página do Spanner Studio da tabela "Singers" com uma nova guia de consulta que contém instruções - INSERTe- SELECT. Edite essas instruções para inserir uma linha na tabela "Singers" e ver o resultado dessa inserção:- GoogleSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (<SingerId>, -- type: INT64 <BirthDate>, -- type: DATE <FirstName>, -- type: STRING(1024) <LastName>, -- type: STRING(1024) <SingerInfo> -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=<SingerId>;- PostgreSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (<singerid>, -- type: bigint <birthdate>, -- type: timestamp with time zone <firstname>, -- type: character varying <lastname>, -- type: character varying <singerinfo> -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=<singerid>;- O PostgreSQL converte os nomes das colunas em minúsculas. 
- Edite a cláusula - VALUESda instrução- INSERTe a cláusula- WHEREda instrução- SELECT:- GoogleSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (1, -- type: INT64 NULL, -- type: DATE 'Marc', -- type: STRING(1024) 'Richards', -- type: STRING(1024) NULL -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=1;- PostgreSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (1, -- type: bigint NULL, -- type: timestamp with time zone 'Marc', -- type: character varying 'Richards', -- type: character varying NULL -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=1;
- Clique em Executar. - O Spanner executa as instruções. Quando terminar, a guia Resultados indica que a primeira instrução inseriu uma linha e fornece um link para visualizar os dados da tabela. 
- Na guia Resultados, clique no link da tabela. A tabela "Singers" agora tem uma linha: - GoogleSQL  - PostgreSQL  
- Clique em Inserir para adicionar outra linha. - O console Google Cloud mostra novamente a página Spanner Studio da tabela "Singers" com uma nova guia de consulta que contém as mesmas instruções - INSERTe- SELECT.
- Edite a cláusula - VALUESda instrução- INSERTe a cláusula- WHEREda instrução- SELECT:- GoogleSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (2, -- type: INT64 NULL, -- type: DATE 'Catalina', -- type: STRING(1024) 'Smith', -- type: STRING(1024) NULL -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=2;- PostgreSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (2, -- type: bigint NULL, -- type: timestamp with time zone 'Catalina', -- type: character varying 'Smith', -- type: character varying NULL -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=2;
- Clique em Executar. - Depois que o Spanner executa as instruções, a guia Resultados novamente indica que a primeira instrução inseriu uma linha. 
- Clique no link tabela. A tabela "Singers" agora tem duas linhas: - GoogleSQL  - PostgreSQL  
- Clique em Inserir para adicionar uma linha. - O Spanner exibe novamente a página Spanner Studio da tabela "Singers" com uma nova guia de consulta que contém as mesmas instruções - INSERTe- SELECT.
- Edite a cláusula - VALUESda instrução- INSERTdo modelo e a cláusula- WHEREda instrução- SELECT:- GoogleSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO Singers (SingerId, BirthDate, FirstName, LastName, SingerInfo) VALUES (3, -- type: INT64 NULL, -- type: DATE 'Kena', -- type: STRING(1024) '', -- type: STRING(1024) NULL -- type: BYTES(MAX) ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM Singers WHERE SingerId=3;- PostgreSQL- -- Add new values in the VALUES clause in order of the column list. -- Each value must be type compatible with its associated column. INSERT INTO singers (singerid, birthdate, firstname, lastname, singerinfo) VALUES (3, -- type: bigint NULL, -- type: timestamp with time zone 'Kena', -- type: character varying '', -- type: character varying NULL -- type: bytea ); -- Change values in the WHERE condition to match the inserted row. SELECT * FROM singers WHERE singerid=3;- O valor fornecido na coluna de sobrenome é uma string vazia, - '', não um valor- NULL.
- Clique em Executar. - Depois que o Spanner executa as instruções, a guia Resultados indica que a primeira instrução inseriu uma linha. 
- Clique no link tabela. A tabela - Singersagora tem três linhas, e a linha com o valor de chave primária de- 3tem uma string vazia na coluna- LastName:- GoogleSQL  - PostgreSQL  
- Na página Dados da tabela "Singers", marque a caixa de seleção na linha com o valor da chave primária de - 3e clique em Editar.- O Spanner mostra a página Spanner Studio com uma nova guia contendo as instruções - UPDATEe- SETdo modelo que você pode editar. Observe que as cláusulas- WHEREdas duas instruções indicam que a linha a ser atualizada é a que tem o valor da chave primária de- 3.- GoogleSQL- -- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE Singers SET BirthDate='', FirstName='Kena', LastName='', SingerInfo='' WHERE SingerId=3; SELECT * FROM Singers WHERE SingerId=3;- PostgreSQL- -- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE singers SET birthdate=NULL, firstname='Kena', lastname='', singerinfo=NULL WHERE singerid='3'; SELECT * FROM singers WHERE singerid='3';
- Edite a cláusula - SETda instrução- UPDATEpara atualizar somente a data de nascimento:- GoogleSQL- -- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE Singers SET BirthDate='1961-04-01' WHERE SingerId=3; SELECT * FROM Singers WHERE SingerId=3;- PostgreSQL- -- Change values in the SET clause to update the row where the WHERE condition is true. UPDATE singers SET birthdate='1961-04-01 00:00:00 -8:00' WHERE singerid='3'; SELECT * FROM singers WHERE singerid='3';
- Clique em Executar. - O Spanner executa as instruções. Quando terminar, a guia Resultados indica que a primeira instrução atualizou uma linha e fornece um link para visualizar os dados da tabela. 
- Na guia Resultados, clique no link da tabela. - A linha atualizada agora tem um valor para a data de nascimento. - GoogleSQL  - PostgreSQL  
- Na página Dados da tabela "Singers", marque a caixa de seleção na linha com 2na primeira coluna e clique em Excluir.
- Na caixa de diálogo que aparece, clique em Confirmar. - A tabela "Singers" agora tem duas linhas: - GoogleSQL  - PostgreSQL  
- Na página Visão geral do banco de dados, clique em Spanner Studio no menu de navegação. 
- Clique em Nova guia para criar uma nova guia de consulta. Em seguida, insira a consulta abaixo no editor de consultas: - GoogleSQL- SELECT * FROM Singers;- PostgreSQL- SELECT * FROM singers;
- Clique em Executar. - O Spanner executa a consulta. Quando terminar, a guia Resultados exibirá o resultado da consulta: - GoogleSQL  - PostgreSQL  
- No console Google Cloud , acesse a página Instâncias do Spanner. 
- Clique no nome da instância que tem o banco de dados que você quer excluir, por exemplo, Instância de teste. 
- Clique no nome do banco de dados que você quer excluir, por exemplo, example-db. 
- Na página Detalhes do banco de dados, clique em delete Excluir banco de dados. 
- Confirme que você quer excluir o banco de dados inserindo o nome dele e clicando em Excluir. 
- No console Google Cloud , acesse a página Instâncias do Spanner. 
- Clique no nome da instância que você quer excluir, por exemplo, Test Instance. 
- Clique em delete Excluir instância. 
- Confirme que você quer excluir a instância digitando o nome dela e clicando em Excluir. 
- Saiba mais sobre Instâncias.
- Compreenda o esquema e o modelo de dados do Spanner.
- Saiba mais sobre a Linguagem de definição de dados (DDL) do GoogleSQL.
- Saiba mais sobre os planos de execução de consulta.
- Saiba como usar o Spanner com C++, C#, Go, Java, Node.js, PHP, Python, Ruby, REST ou gcloud.
Criar uma instância
Quando você usa o Spanner pela primeira vez, é preciso criar uma instância, que é uma alocação de recursos usados pelos bancos de dados do Spanner naquela instância.
Criar um banco de dados
Crie um esquema para o banco de dados
inserir e modificar dados
O console do Google Cloud oferece uma interface para inserir, editar e excluir dados.
Inserir dados
Também é possível inserir valores de string vazios quando adicionar dados.
Editar dados
Excluir dados
Executar uma consulta
Parabéns! Você criou um banco de dados do Spanner e executou uma instrução SQL usando o editor de consultas.
Limpar
Para evitar cobranças extras na sua conta do Google Cloud , exclua o banco de dados e a instância. Desativar a API Cloud Billing não interrompe as cobranças. Quando você exclui uma instância, todos os bancos de dados nela são excluídos.