C++ hello world
Este exemplo é uma aplicação simples "Olá mundo", escrita em C++, que ilustra como fazer o seguinte:
- Configure a autenticação
- Estabeleça ligação a uma instância do Bigtable.
- Criar uma nova tabela.
- Escreva dados na tabela.
- Ler os dados novamente.
- Eliminar a tabela.
Configure a autenticação
Para usar os C++ exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Set up authentication for a local development environment.
Executar o exemplo
Este exemplo usa o pacote Cloud Bigtable da Google Cloud biblioteca cliente para C++ para comunicar com o Bigtable.
Para executar este programa de exemplo, siga as instruções no GitHub.
Usar a Google Cloud biblioteca cliente com o Bigtable
A aplicação de exemplo liga-se ao Bigtable e demonstra algumas operações simples.
Instalar e importar a biblioteca de cliente
Transfira ou clone a biblioteca de cliente C++ do Bigtable do GitHub e, em seguida, compile-a. Siga as instruções do compilador no README de nível superior.
Inclua os cabeçalhos necessários.
Associar ao Bigtable
Use MakeBigtableTableAdminConnection()
para
construir um BigtableTableAdminClient
, que
vai usar para criar uma tabela.
Criar uma tabela
Defina um esquema para a tabela que tenha uma família de colunas. Defina uma regra de recolha de lixo para a família de colunas para manter um máximo de uma versão de cada valor. Use esse esquema para instanciar um objeto de tabela com
BigtableTableAdminClient::CreateTable()
. Em seguida, crie um cliente de dados que pode usar para introduzir e extrair dados da sua tabela.
Escrever linhas numa tabela
Iterar uma lista de strings de saudação para criar algumas novas linhas para a tabela.
Em cada iteração, use SingleRowMutation
para definir uma linha e atribuir-lhe uma chave e um valor de linha. Em seguida, chame Table::Apply()
para aplicar a mutação à linha.
Criar um filtro
Antes de ler os dados que escreveu, crie um filtro,
usando Filter::ColumnRangeClosed()
,
para limitar os dados que o Bigtable devolve. Este filtro indica ao Bigtable que deve devolver apenas a versão mais recente de cada valor, mesmo que a tabela contenha células mais antigas que tenham expirado, mas que ainda não tenham sido removidas pela recolha de lixo.
Ler uma linha pela respetiva chave
Chame a função Table::ReadRow()
, transmitindo a chave da linha e o filtro, para obter uma versão de cada valor nessa linha.
Analisar todas as linhas da tabela
Use Table::ReadRows()
para ler um intervalo de linhas da tabela.
Eliminar uma tabela
Elimine a tabela com BigtableTableAdminClient::DeleteTable()
.
A reunir tudo
Segue-se o exemplo completo sem comentários.