Neste guia de início rápido, mostramos como realizar operações básicas no Cloud Spanner usando o console do Google Cloud. No início rápido, você vai:
- Criar uma instância do Spanner.
- Cria um banco de dados.
- Criar um esquema.
- Insira e modifique dados.
- executar uma consulta.
Para informações sobre o custo de uso do Spanner, consulte Preços.
Antes de começar
- Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
-
No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
- Opcional: a API Spanner precisa ser ativada automaticamente. Caso contrário, ative manualmente: Ativar a API Spanner
Criar uma instância
Quando você usa o Spanner pela primeira vez, precisa criar uma instância, que é uma alocação de recursos usados pelos bancos de dados do Spanner nessa instância.
No console do Google Cloud, acesse a página Cloud Spanner.
Selecione ou crie um projeto do Google Cloud, caso ainda não tenha feito isso.
Na página Cloud Spanner, clique em Criar uma instância provisionada.
Se você já usou o Spanner antes, verá a página Instâncias do Spanner em vez da página do produto. Clique em Criar instância.
Para o nome da instância, insira um nome, como Instância de teste.
O ID da instância é inserido automaticamente com base no nome da instância, por exemplo, test-instance. Mude, se necessário.
Em Escolha sua configuração, mantenha a opção padrão Região 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.
Em Alocar capacidade de computação, retenha o valor padrão de 1.000 unidades de processamento.
A página de criação de instâncias ficará assim:
Clique em Criar.
A instância aparece na lista.
Criar um banco de dados
No console do 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 de visão geral da instância que será aberta, 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 tiver selecionado o GoogleSQL, você definirá o esquema no campo de texto Definir seu esquema na próxima seção deste guia de início rápido.
A página de criação de banco de dados ficará assim:
Clique em Criar.
O console do Google Cloud exibe a página Visão geral do banco de dados que você criou.
Crie um esquema para o banco de dados
Na seção "Tabelas" da página Visão geral do banco de dados, clique em Criar tabela.
Na página Criar instruções DDL, digite:
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 ( SingerId BIGINT PRIMARY KEY, FirstName VARCHAR(1024), LastName VARCHAR(1024), SingerInfo BYTEA, BirthDate TIMESTAMPTZ );
Clique em Enviar.
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
Observe que o PostgreSQL converte o nome da tabela em letras minúsculas.
Insira e modifique dados
O console do Google Cloud fornece uma interface para inserir, editar e excluir dados.
Insira dados
Na lista de tabelas da página Visão geral do banco de dados, clique na tabela "Artistas".
O console do Google Cloud exibe a página Esquema da tabela "Artistas".
No menu de navegação, clique em Dados para exibir a página Dados da tabela "Candidates".
Clique em Insert.
O console do Google Cloud exibe a página do Spanner Studio da tabela "Artistas" com uma nova guia de consulta que contém instruções
INSERT
eSELECT
editadas para inserir uma linha na tabela "cantores" e visualizar 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
VALUES
da instruçãoINSERT
e a cláusulaWHERE
da instruçãoSELECT
: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 Candidates agora tem uma linha:
GoogleSQL
PostgreSQL
Clique em Inserir para adicionar outra linha.
O console do Google Cloud exibe novamente a página Spanner Studio da tabela "Artistas" com uma nova guia de consulta que contém as mesmas instruções
INSERT
eSELECT
.Edite a cláusula
VALUES
da instruçãoINSERT
e a cláusulaWHERE
da instruçãoSELECT
: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 indica novamente que a primeira instrução inseriu uma linha.
Clique no link tabela. A tabela Candidates agora tem duas linhas:
GoogleSQL
PostgreSQL
Você também pode inserir valores de string vazios quando inserir dados.
Clique em Inserir para adicionar uma linha.
O Spanner exibe novamente a página Spanner Studio da tabela "Artistas" com uma nova guia de consulta que contém as mesmas instruções
INSERT
eSELECT
.Edite a cláusula
VALUES
da instruçãoINSERT
do modelo e a cláusulaWHERE
da instruçãoSELECT
: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 valorNULL
.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
Singers
agora tem três linhas, e a linha com o valor da chave primária3
tem uma string vazia na colunaLastName
:GoogleSQL
PostgreSQL
Editar dados
Na página Dados da tabela "Cantores", marque a caixa de seleção na linha com o valor da chave primária de
3
e clique em Editar.O Spanner exibe a página do Spanner Studio com uma nova guia contendo instruções de modelo
UPDATE
eSELECT
que podem ser editadas. Observe que as cláusulasWHERE
das duas instruções indicam que a linha a ser atualizada é a que tem o valor da chave primária de3
.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
SET
da instruçãoUPDATE
para 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
Excluir dados
- Na página Dados da tabela "Cantores", marque a caixa de seleção na linha com
2
na primeira coluna e clique em Excluir. Na caixa de diálogo que aparece, clique em Confirmar.
A tabela Candidates agora tem duas linhas:
GoogleSQL
PostgreSQL
Executar uma consulta
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. Depois, insira a seguinte consulta 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
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 adicionais na conta de faturamento do Cloud, exclua o banco de dados e a instância que você criou. A exclusão de uma instância exclui automaticamente todos os bancos de dados criados nela.
Excluir o banco de dados
No console do Google Cloud, acesse a página Instâncias do Spanner.
Clique no nome da instância que contém 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.
Digite o nome dele e clique em Excluir para confirmar que você quer excluir o banco de dados.
Excluir a instância
No console do Google Cloud, acesse a página Instâncias do Spanner.
Clique no nome da instância que você quer excluir, por exemplo, Instância de teste.
Clique em delete Excluir instância.
Para confirmar a exclusão, digite o nome dela e clique em Excluir.
A seguir
- Saiba mais sobre Instâncias.
- Entenda o esquema e 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.