Hello World em C++
Este exemplo é um aplicativo "Hello World" simples, escrito em C++, que ilustra como:
- Configurar a autenticação
- Conecte a uma instância do Bigtable.
- criar uma nova tabela;
- Gravação de dados na tabela
- Leitura dos dados
- Exclusão da tabela
Configurar a autenticação
Para usar os exemplos de C++ desta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
-
Instale a Google Cloud CLI.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Como executar a amostra
Este exemplo usa o pacote do Cloud Bigtable da Google Cloud biblioteca de cliente para C++ para se comunicar com o Bigtable.
Para executar este programa de amostra, siga as instruções no GitHub.
Como usar a Google Cloud biblioteca de cliente com o Bigtable
O aplicativo de amostra conecta-se ao Bigtable e demonstra algumas operações simples.
Como instalar e importar a biblioteca de cliente
Faça o download ou clone a biblioteca de cliente do Bigtable para C++ do GitHub e compile-a. Siga as instruções do compilador no arquivo README (em inglês).
Inclua os cabeçalhos obrigatórios.
Como se conectar ao Bigtable
Use MakeBigtableTableAdminConnection() para
criar um BigtableTableAdminClient, que
você usará para criar uma tabela.
Como criar uma tabela
Defina um esquema para a tabela que tenha um grupo de colunas. Defina uma
regra de coleta de lixo para o grupo de colunas para manter no máximo uma versão
de cada valor. Use esse esquema para instanciar um objeto de tabela usando
BigtableTableAdminClient::CreateTable() (em inglês). Em seguida, crie um cliente
de dados que você possa usar para ver dados dentro e fora da sua tabela.
Como gravar linhas em uma tabela
Execute um loop em uma lista de strings de saudação para criar algumas linhas novas na tabela.
Em cada iteração, use SingleRowMutation (em inglês) para definir
uma linha e atribuir a ela uma chave de linha e um valor. Em seguida, chame Table::Apply() para aplicar a mutação à linha.
Como criar um filtro
Antes de ler os dados gravados, crie um filtro usando
Filter::ColumnRangeClosed()
para limitar os dados retornados pelo Bigtable. Com esse filtro, o Bigtable retornará apenas a versão mais recente de cada valor, mesmo que a tabela contenha células mais antigas que tenham expirado, mas ainda não tenham sido removidas pela coleta de lixo.
Como ler uma linha pela chave
Chame a função Table::ReadRow() (em inglês), passando a chave de linha e o filtro,
para ver uma versão de cada valor nessa linha.
Como verificar todas as linhas da tabela
Use Table::ReadRows() (em inglês) para ler um intervalo de linhas
da tabela.
Como excluir tabelas
Exclua a tabela com BigtableTableAdminClient::DeleteTable() (em inglês).
Como tudo funciona em conjunto
Aqui está o exemplo completo sem comentários.