Como gerenciar tabelas

A maneira mais fácil de gerenciar as tabelas do Cloud Bigtable é usar a ferramenta de linha de comando cbt. Nesta página, você verá como usar o cbt para criar, modificar e excluir tabelas, e como conseguir informações sobre tabelas atuais com o cbt ou o Console do Google Cloud Platform.

A ferramenta cbt é compatível com diversos comandos não descritos nesta página. Consulte a referência do cbt para uma lista completa de comandos.

Também é possível gerenciar tabelas de maneira programática com uma das bibliotecas de cliente ou APIs de serviço (links em inglês) do Cloud Bigtable, ou gerenciar tabelas com a ferramenta de linha de comando do shell do HBase. Consulte a documentação do HBase para ver instruções sobre como usar o shell do HBase.

Antes de começar

Antes de começar, instale a ferramenta cbt.

Como configurar a ferramenta cbt

Você pode especificar padrões para as configurações da cbt a seguir:

  • O projeto onde a instância do Cloud Bigtable está localizada.
  • A instância do Cloud Bigtable à qual o cbt deve se conectar.
  • O arquivo de credenciais, em formato JSON, que será utilizado após a conexão com a instância. Consulte as instruções para criar uma chave de conta de serviço. Se você realizar a autenticação por meio da execução de gcloud auth application-default login ou usar a ferramenta cbt em uma instância do Compute Engine, não precisará do arquivo de credenciais.
  • Os pontos de extremidade da API a serem utilizados. Normalmente, não é necessário alterar esses valores.

Para especificar os padrões dessas configurações, crie um arquivo .cbtrc no diretório principal. Você pode modificar os valores definidos como padrão no arquivo .cbtrc usando sinalizações de linha de comando.

Para criar um arquivo .cbtrc, execute o comando a seguir substituindo [PROJECT_ID] e [INSTANCE_ID] pelos valores adequados:

echo -e "project = [PROJECT_ID]\ninstance = [INSTANCE_ID]" > ~/.cbtrc

Para simplificar, o restante das instruções nesta página pressupõe que foi feita a definição dos códigos do projeto e da instância no arquivo .cbtrc. Também é possível usar as sinalizações -project e -instance para definir esses valores, sempre que você executar o cbt.

Como criar de tabelas

Ao criar uma tabela com a ferramenta cbt, não é necessário especificar os grupos de colunas que serão usados na tabela. Você pode adicionar ou excluir os grupos de colunas mais tarde.

Para criar uma tabela, use o comando a seguir, substituindo [TABLE_NAME] pelo nome da tabela:

cbt createtable [TABLE_NAME]

Como dividir as tabelas por chave de linha

Quando você cria uma tabela, pode dividi-la com base na chave de linha para espalhar a carga em vários nós do Cloud Bigtable. Por exemplo, você poderá dividir uma tabela previamente se a intenção for gravar um número muito grande de linhas na tabela.

Em geral, dividir previamente a tabela não é obrigatório porque o Cloud Bigtable faz isso automaticamente em segundo plano, conforme necessário. Além disso, lembre-se de que o Cloud Bigtable eventualmente dividirá a tabela em diferentes chaves de linha com base na quantidade de dados da tabela e na frequência com que cada linha é acessada.

Para dividir a tabela previamente com base na chave de linha, use a sintaxe a seguir para criar a tabela substituindo [TABLE_NAME] pelo nome dela e [SPLITS] por uma lista separada por vírgulas com os prefixos de chave de linha a serem usados nessa divisão:

cbt createtable [TABLE_NAME] splits=[SPLITS]

Por exemplo, para dividir previamente a tabela my-table em chaves de linha que começam com 10 e 20:

cbt createtable my-table splits=10,20

Como modificar os grupos de colunas de tabelas

Você pode usar a ferramenta cbt para adicionar ou excluir grupos de colunas em uma tabela existente.

Como adicionar grupos de colunas

Para adicionar um grupo de colunas a uma tabela, use o comando a seguir, substituindo [TABLE_NAME] pelo nome da tabela e [FAMILY_NAME] pelo nome do grupo de colunas:

cbt createfamily [TABLE_NAME] [FAMILY_NAME]

Por exemplo, para adicionar o grupo de colunas cf1 e cf2 à tabela my-table:

cbt createfamily my-table cf1
cbt createfamily my-table cf2

Como excluir grupos de colunas

Para excluir um grupo de colunas de uma tabela, use o comando a seguir, substituindo [TABLE_NAME] pelo nome da tabela e [FAMILY_NAME] pelo nome do grupo de colunas.

cbt deletefamily [TABLE_NAME] [FAMILY_NAME]

Por exemplo, para excluir o grupo de colunas cf2 da tabela my-table:

cbt deletefamily my-table cf2

Como visualizar listas de tabelas

Console

Para ver uma lista de tabelas em uma instância:

  1. Abra a lista de instâncias do Cloud Bigtable no Console do GCP.

    Abrir a lista de instâncias

  2. Clique na instância que contém as tabelas a serem visualizadas.

  3. Clique em Tabelas no painel esquerdo.

    A página "Tabelas" exibe uma lista de tabelas na instância.

    • Clique na seta ao lado do código da tabela para expandir uma lista de replicações dela.
    • Clique em Exibir métricas ao lado do nome de uma tabela para visualizar os dados de monitoramento dela.

cbt

Para visualizar uma lista de tabelas em uma instância, execute o seguinte comando:

cbt ls

Como visualizar informações sobre tabelas

Você pode usar a ferramenta cbt para extrair uma lista de grupos de colunas existentes em uma tabela.

Para visualizar os grupos de colunas de uma tabela, use o comando a seguir, substituindo [TABLE_NAME] pelo nome da tabela:

cbt ls [TABLE_NAME]

Como configurar as políticas de coleta de lixo

Esta seção explica como usar a ferramenta cbt para controlar quantas versões de cada valor o Cloud Bigtable retém e como fornecer um prazo de validade para os valores. Também é possível definir políticas de coleta de lixo de maneira programática ao usar uma biblioteca de cliente do Cloud Bigtable.

Como manter várias versões de cada valor

Ao criar um grupo de colunas, você pode especificar quantas versões de cada valor quer reter no grupo. Se você não especificar essa configuração, o Cloud Bigtable usa uma das seguintes configurações padrão:

  • Se você criar o grupo de colunas com o cliente HBase para Java ou o shell do HBase ou outra ferramenta que usa o cliente HBase para Java, o Cloud Bigtable manterá apenas uma versão de cada valor no grupo. Essa configuração padrão é consistente com o HBase.
  • Se criar o grupo de colunas com qualquer outra biblioteca de cliente ou ferramenta, inclusive cbt, o Cloud Bigtable reterá um número infinito de versões de cada valor.

Para alterar o número de versões retidas em um grupo de colunas, use o seguinte comando substituindo [TABLE_NAME] pelo nome da tabela, [FAMILY_NAME] pelo nome do grupo de colunas e [VERSIONS] pelo número de versões retidas:

cbt setgcpolicy [TABLE_NAME] [FAMILY_NAME] maxversions=[VERSIONS]

Por exemplo, para atualizar o grupo de colunas cf1 na tabela my-table e manter cinco versões de cada valor:

cbt setgcpolicy my-table cf1 maxversions=5

Como configurar a data de validade dos valores

Ao criar um grupo de colunas, você pode especificar quando cada valor do grupo deve expirar. Se você não especificar essa configuração, os valores no grupo de colunas nunca expirarão.

Para que os valores expirem após um período especificado, use o seguinte comando, substituindo [TABLE_NAME] pelo nome da tabela, [FAMILY_NAME] pelo nome do grupo de colunas e [DAYS] pelo número de dias em que cada valor será mantido:

cbt setgcpolicy [TABLE_NAME] [FAMILY_NAME] maxage=[DAYS]d

Por exemplo, para fazer com que os valores no grupo de colunas cf1 sejam removidos após um dia:

cbt setgcpolicy my-table cf1 maxage=1d

Como excluir tabelas

Para excluir uma tabela, use o comando a seguir, substituindo [TABLE_NAME] pelo nome da tabela:

cbt deletetable [TABLE_NAME]
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Cloud Bigtable