Apache Cassandra
O conector do Apache Cassandra permite-lhe realizar operações de inserção, eliminação, atualização e leitura numa base de dados Cassandra.
Antes de começar
Antes de usar o conetor do Apache Cassandra, faça as seguintes tarefas:
- No seu projeto do Google Cloud:
- Certifique-se de que a conetividade de rede está configurada. Para obter informações sobre padrões de rede, consulte o artigo Conetividade de rede.
- Conceda a função IAM roles/connectors.admin ao utilizador que está a configurar o conetor.
- Conceda as seguintes funções de IAM à conta de serviço que quer usar para o conector:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
Uma conta de serviço é um tipo especial de Conta Google destinada a representar um utilizador não humano que precisa de autenticação e autorização para aceder a dados nas APIs Google. Se não tiver uma conta de serviço, tem de criar uma. O conector e a conta de serviço têm de pertencer ao mesmo projeto. Para mais informações, consulte Criar uma conta de serviço.
- Ative os seguintes serviços:
secretmanager.googleapis.com
(Secret Manager API)connectors.googleapis.com
(API Connectors)
Para saber como ativar serviços, consulte o artigo Ativar serviços.
Se estes serviços ou autorizações não tiverem sido ativados anteriormente para o seu projeto, é-lhe pedido que os ative quando configurar o conector.
- Para informações sobre a configuração da autenticação, consulte o artigo Configurar a autenticação.
Configure o conetor
Uma associação é específica de uma origem de dados. Isto significa que, se tiver muitas origens de dados, tem de criar uma associação separada para cada origem de dados. Para criar uma associação, faça o seguinte:
- Na Cloud Console, aceda à página Integration Connectors > Ligações e, de seguida, selecione ou crie um projeto do Google Cloud.
- Clique em + CRIAR NOVO para abrir a página Criar associação.
- Na secção Localização, escolha a localização para a ligação.
- Região: selecione uma localização na lista pendente.
Para ver a lista de todas as regiões suportadas, consulte o artigo Localizações.
- Clique em SEGUINTE.
- Região: selecione uma localização na lista pendente.
- Na secção Detalhes da associação, conclua o seguinte:
- Conetor: selecione Apache Cassandra na lista pendente de conetores disponíveis.
- Versão do conetor: selecione a versão do conetor na lista pendente de versões disponíveis.
- No campo Nome da ligação, introduza um nome para a instância de ligação.
Os nomes das associações têm de cumprir os seguintes critérios:
- Os nomes das associações podem usar letras, números ou hífenes.
- As letras têm de ser minúsculas.
- Os nomes das associações têm de começar com uma letra e terminar com uma letra ou um número.
- Os nomes das associações não podem exceder 49 carateres.
- Opcionalmente, introduza uma Descrição para a instância de associação.
- Opcionalmente, ative o Registo na nuvem e, em seguida, selecione um nível de registo. Por predefinição, o nível do registo está definido como
Error
. - Conta de serviço: selecione uma conta de serviço que tenha as funções necessárias.
- Opcionalmente, configure as definições do nó de associação:
- Número mínimo de nós: introduza o número mínimo de nós de ligação.
- Número máximo de nós: introduza o número máximo de nós de ligação.
Um nó é uma unidade (ou uma réplica) de uma ligação que processa transações. São necessários mais nós para processar mais transações para uma ligação e, inversamente, são necessários menos nós para processar menos transações. Para compreender como os nós afetam os preços dos conectores, consulte o artigo Preços dos nós de ligação. Se não introduzir valores, por predefinição, os nós mínimos são definidos como 2 (para uma melhor disponibilidade) e os nós máximos são definidos como 50.
- Keyspace: espaço de chaves do Cassandra
- Opcionalmente, clique em + ADICIONAR ETIQUETA para adicionar uma etiqueta à associação sob a forma de um par chave/valor.
- Clique em SEGUINTE.
- Na secção Destinos, introduza os detalhes do anfitrião remoto (sistema de back-end) ao qual quer estabelecer ligação.
- Tipo de destino: selecione um Tipo de destino.
- Para especificar o nome de anfitrião ou o endereço IP de destino, selecione Endereço do anfitrião e introduza o endereço no campo Anfitrião 1.
- Para estabelecer uma ligação privada, selecione Anexo do ponto final e escolha o anexo necessário na lista Anexo do ponto final.
Se quiser estabelecer uma ligação pública aos seus sistemas de back-end com segurança adicional, pode considerar configurar endereços IP estáticos de saída para as suas ligações e, em seguida, configurar as regras da firewall para permitir apenas os endereços IP estáticos específicos.
Para introduzir destinos adicionais, clique em +ADICIONAR DESTINO.
- Clique em SEGUINTE.
- Tipo de destino: selecione um Tipo de destino.
-
Na secção Autenticação, introduza os detalhes de autenticação.
- Selecione um Tipo de autenticação e introduza os detalhes relevantes.
Os seguintes tipos de autenticação são suportados pela ligação do Apache Cassandra:
- Nome de utilizador e palavra-passe
- Clique em SEGUINTE.
Para saber como configurar estes tipos de autenticação, consulte o artigo Configurar autenticação.
- Selecione um Tipo de autenticação e introduza os detalhes relevantes.
- Rever: reveja os detalhes da ligação e da autenticação.
- Clique em Criar.
Configure a autenticação
Introduza os detalhes com base na autenticação que quer usar.
-
Nome de utilizador e palavra-passe
- Nome de utilizador: o nome de utilizador do Apache Cassandra a usar para a ligação.
- Palavra-passe: Secret do Secret Manager que contém a palavra-passe associada ao nome de utilizador do Apache Cassandra.
Exemplos de configuração de ligação
Tipo de ligação de autenticação básica
Nome do campo | Detalhes |
---|---|
Localização | us-central1 |
Conetor | apachecassandra |
Versão do conetor | 1 |
Nome da ligação | apache-cassandra-vm-conn |
Ative o Cloud Logging | Sim |
Conta de serviço | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
Bases de dados | test-google-cloud |
Esquemas navegáveis | |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Ative o SSL (configuração SSL) | Não |
Tipo de destino | Morada do anfitrião |
Anfitrião | 192.0.2.0 |
Porta | PORT |
Nome de utilizador | NOME DE UTILIZADOR |
Palavra-passe | PASSWORD |
Versão do Secret | 1 |
Se o SSL estiver desativado na instância do Cassandra, não pode usar a autenticação básica com o nome de utilizador e a palavra-passe. Se o SSL estiver ativado na instância do Cassandra, tem de gerar um certificado SSL, ativar o SSL na ligação do Cassandra e especificar o certificado público ou privado.
Se o SSL estiver ativado na instância do PSC, outros tipos de autenticação não funcionam. Ative o SSL na ligação Cassandra e especifique o certificado público ou privado.
Tipo de ligação PSC
Nome do campo | Detalhes |
---|---|
Localização | us-central1 |
Conetor | apachecassandra |
Versão do conetor | 1 |
Nome da ligação | apache-cassandra-vm-conn-psc |
Ative o Cloud Logging | Sim |
Conta de serviço | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
Bases de dados | DATABASE_NAME |
Esquemas navegáveis | |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Configuração de SSL | Não |
Tipo de destino | Morada do anfitrião |
Anfitrião | 192.0.2.0 |
Porta | PORT |
Nome de utilizador | NOME DE UTILIZADOR |
Palavra-passe | PASSWORD |
Versão do Secret | 1 |
Tipo de ligação SSL
Nome do campo | Detalhes |
---|---|
Localização | us-central1 |
Conetor | apachecassandra |
Versão do conetor | 1 |
Nome da ligação | apache-cassandra-vm-conn |
Ative o Cloud Logging | Sim |
Conta de serviço | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
Bases de dados | testgcp |
Esquemas navegáveis | |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Ative o SSL (em Configuração SSL) | Sim |
Escolha o modelo de fidedignidade (em Trust Store) | Privado |
Repositório fidedigno personalizado | CUSTOM_TRUST_STORE |
Versão do Secret | 1 |
Certificado de cliente (em Armazenamento de chaves) | CLIENT_CERT |
Versão do Secret | 1 |
Chave privada do cliente (em Armazenamento de chaves) | CLIENT_PRIVATE_KEY |
Versão do Secret | 1 |
Tipo de destino | Morada do anfitrião |
Anfitrião | 192.0.2.0 |
Porta | PORT |
Nome de utilizador | NOME DE UTILIZADOR |
Palavra-passe | PASSWORD |
Versão do Secret | 1 |
Tipo de conetividade multinó
Nome do campo | Detalhes |
---|---|
Localização | europe-west1 |
Conetor | apachecassandra |
Versão do conetor | 1 |
Nome da ligação | apache-cassandra-vm-conn-multinode1 |
Ative o Cloud Logging | Sim |
Conta de serviço | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
Bases de dados | test-google-cloud |
Esquemas navegáveis | |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Ative o SSL (em Configuração SSL) | Não |
Tipo de destino | Morada do anfitrião |
Anfitrião | 192.0.2.0 |
Porta | PORT |
Anfitrião | 192.0.2.0 |
Porta | PORT |
Anfitrião | 192.0.2.0 |
Porta | PORT |
Nome de utilizador | NOME DE UTILIZADOR |
Palavra-passe | PASSWORD |
Versão do Secret | 1 |
Para usar um tipo de ligação com vários nós, o SSL tem de estar desativado na instância do Cassandra e tem de usar o nome de utilizador e a palavra-passe para autenticar. Se o SSL estiver ativado na instância do Cassandra, tem de gerar um certificado SSL, ativar o SSL na ligação do Cassandra e especificar o certificado público ou privado.
Multinó com tipo de ligação SSL
Nome do campo | Detalhes |
---|---|
Localização | europe-west1 |
Conetor | apachecassandra |
Versão do conetor | 1 |
Nome da ligação | apache-cassandra-vm-conn-multinode1 |
Ative o Cloud Logging | Sim |
Conta de serviço | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com/td> |
Bases de dados | test-google-cloud |
Esquemas navegáveis | |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Ative o SSL (em Configuração SSL) | Sim |
Escolha o modelo de fidedignidade (em Trust Store) | Privado |
Repositório fidedigno personalizado | CUSTOM_TRUST_STORE |
Versão do Secret | 1 |
Certificado de cliente (em Armazenamento de chaves) | CLIENT_CERT |
Versão do Secret | 1 |
Chave privada do cliente (em Armazenamento de chaves) | CLIENT_PRIVATE_KEY |
Versão do Secret | 1 |
Tipo de destino | Morada do anfitrião |
Anfitrião | 192.0.2.1 |
Porta | PORT |
Anfitrião | 192.0.2.2 |
Porta | PORT |
Anfitrião 3 | 192.0.2.3 |
Porta | PORT |
Nome de utilizador | NOME DE UTILIZADOR |
Palavra-passe | PASSWORD |
Versão do Secret | 1 |
Para obter informações sobre a configuração do SSL para o Apache Cassandra, consulte o artigo Configurar um cluster do Cassandra com SSL
Para obter informações sobre a configuração do Cassandra num único nó, consulte os artigos Instalar o Cassandra ou Instalar o Apache Cassandra no CentOS 7 .
Para obter informações sobre a configuração do Cassandra em vários nós, consulte Como instalar o Cassandra em vários centros de dados ou Inicializar um cluster de vários nós.
Entidades, operações e ações
Todos os conetores de integração oferecem uma camada de abstração para os objetos da aplicação ligada. Só pode aceder aos objetos de uma aplicação através desta abstração. A abstração é exposta como entidades, operações e ações.
- Entidade: pode considerar uma entidade como um objeto ou uma coleção de propriedades na aplicação ou no serviço associado. A definição de uma entidade difere de um conetor para um conetor. Por exemplo, num conetor de base de dados, as tabelas são as entidades. Num conetor de servidor de ficheiros, as pastas são as entidades. Num conetor de sistema de mensagens, as filas são as entidades.
No entanto, é possível que um conector não suporte ou não tenha entidades, caso em que a lista
Entities
estará vazia. - Operação: uma operação é a atividade que pode realizar numa entidade. Pode realizar
qualquer uma das seguintes operações numa entidade:
Selecionar uma entidade na lista disponível gera uma lista de operações disponíveis para a entidade. Para uma descrição detalhada das operações, consulte as operações de entidades da tarefa de conectores. No entanto, se um conector não suportar nenhuma das operações de entidades, essas operações não suportadas não são apresentadas na lista
Operations
. - Ação: uma ação é uma função de primeira classe que é disponibilizada à integração
através da interface do conetor. Uma ação permite-lhe fazer alterações a uma ou mais entidades e
varia de conetor para conetor. Normalmente, uma ação tem alguns parâmetros de entrada e um parâmetro de saída. No entanto, é possível que um conector não suporte nenhuma ação, caso em que a lista
Actions
está vazia.
Limitações do sistema
O conector do Apache Cassandra pode processar 65 transações por segundo, por nó, e limita quaisquer transações além deste limite. Por predefinição, os Integration Connectors atribuem 2 nós (para uma melhor disponibilidade) a uma ligação.
Use a ligação do Apache Cassandra numa integração
Depois de criar a ligação, esta fica disponível no Apigee Integration e no Application Integration. Pode usar a ligação numa integração através da tarefa Conectores.
- Para compreender como criar e usar a tarefa Connectors no Apigee Integration, consulte o artigo Tarefa Connectors.
- Para compreender como criar e usar a tarefa Connectors na integração de aplicações, consulte o artigo Tarefa Connectors.
Para informações sobre os limites aplicáveis aos Integration Connectors, consulte Limites.
Ações
Este conetor suporta a execução das seguintes ações:
- Procedimentos e funções armazenados definidos pelo utilizador. Se tiver procedimentos e funções armazenados no seu back-end, estes são apresentados
na coluna
Actions
da caixa de diálogoConfigure connector task
. - Consultas SQL personalizadas. Para executar consultas SQL personalizadas, o conector fornece a ação Executar consulta personalizada.
Para criar uma consulta personalizada, siga estes passos:
- Siga as instruções detalhadas para adicionar uma tarefa de conetores.
- Quando configurar a tarefa do conetor, no tipo de ação que quer realizar, selecione Ações.
- Na lista Ação, selecione Executar consulta personalizada e, de seguida, clique em Concluído.
- Expanda a secção Entrada de tarefas e, de seguida, faça o seguinte:
- No campo Tempo limite após, introduza o número de segundos a aguardar até que a consulta seja executada.
Valor predefinido:
180
segundos. - No campo Número máximo de linhas, introduza o número máximo de linhas a devolver da base de dados.
Valor predefinido:
25
. - Para atualizar a consulta personalizada, clique em Editar script personalizado. É apresentada a caixa de diálogo Editor de scripts.
- Na caixa de diálogo Editor de scripts, introduza a consulta SQL e clique em Guardar.
Pode usar um ponto de interrogação (?) numa declaração SQL para representar um único parâmetro que tem de ser especificado na lista de parâmetros de consulta. Por exemplo, a seguinte consulta SQL seleciona todas as linhas da tabela
Employees
que correspondem aos valores especificados para a colunaLastName
:SELECT * FROM Employees where LastName=?
- Se usou pontos de interrogação na sua consulta SQL, tem de adicionar o parâmetro clicando em + Adicionar nome do parâmetro para cada ponto de interrogação. Durante a execução da integração, estes parâmetros substituem os pontos de interrogação (?) na consulta SQL sequencialmente. Por exemplo, se adicionou três pontos de interrogação (?), tem de adicionar três parâmetros por ordem de sequência.
Para adicionar parâmetros de consulta, faça o seguinte:
- Na lista Tipo, selecione o tipo de dados do parâmetro.
- No campo Valor, introduza o valor do parâmetro.
- Para adicionar vários parâmetros, clique em + Adicionar parâmetro de consulta.
A ação Executar consulta personalizada não suporta variáveis de matriz.
- No campo Tempo limite após, introduza o número de segundos a aguardar até que a consulta seja executada.
Exemplos de operações de entidades
Exemplo: listar registos de uma entidade
Este exemplo apresenta os registos da entidade Users
.
- Na caixa de diálogo
Configure connector task
, clique emEntities
. - Selecione
Users
na listaEntity
. - Selecione a operação
List
e, de seguida, clique em Concluído. - Na secção Entrada de tarefas da tarefa Conectores, pode definir o
filterClause de acordo com o seu requisito.
Por exemplo, definir a cláusula de filtro como
employeeCode='5100' and startDate='2010-01-01 00:00:00'
, lista apenas os registos cujo employeeCode é 5100 e startDate é 2010-01-01 00:00:00.
Exemplo: obtenha um único registo de uma entidade
Este exemplo obtém um registo da entidade Users
.
- Na caixa de diálogo
Configure connector task
, clique emEntities
. - Selecione
User
na listaEntity
. - Selecione a operação
Get
e, de seguida, clique em Concluído. - Na secção Entrada da tarefa da tarefa Conectores, clique em entityId e, em seguida, introduza
103032
no campo Valor predefinido.Aqui,
103032
é o valor-chave principal da entidadeUsers
.
Exemplo: elimine um registo de uma entidade
Este exemplo elimina um registo da entidade Users
.
- Na caixa de diálogo
Configure connector task
, clique emEntities
. - Selecione
Users
na listaEntity
. - Selecione a operação
Delete
e, de seguida, clique em Concluído. - Na secção Entrada da tarefa da tarefa Conectores, clique em entityId e, em seguida, introduza
113132
no campo Valor predefinido.Em alternativa, se a entidade tiver chaves primárias compostas em vez de especificar o entityId, pode definir o filterClause. Por exemplo,
employeeCode='5100' and startDate='2010-01-01 00:00:00'
.
Exemplo: crie um registo numa entidade
Este exemplo cria um registo na entidade Users
.
- Na caixa de diálogo
Configure connector task
, clique emEntities
. - Selecione
Users
na listaEntity
. - Selecione a operação
Create
e, de seguida, clique em Concluído. - Na secção Entrada da tarefa da tarefa Conetores, clique em
connectorInputPayload
e, de seguida, introduza um valor semelhante ao seguinte no campoDefault Value
:{ "employeeCode": "5100", "startDate": "2010-01-01 00:00:00.0", "country": "US" }
Se a integração for bem-sucedida, o campo connectorOutputPayload
da tarefa do conector tem a resposta da operação de criação.
Exemplo: atualize um registo numa entidade
Este exemplo atualiza um registo na entidade Users
.
- Na caixa de diálogo
Configure connector task
, clique emEntities
. - Selecione
Users
na listaEntity
. - Selecione a operação
Update
e, de seguida, clique em Concluído. - Na secção Entrada da tarefa da tarefa Conetores, clique em
connectorInputPayload
e, de seguida, introduza um valor semelhante ao seguinte no campoDefault Value
:{ "country": "IN" }
- Na secção Entrada da tarefa da tarefa Conectores, clique em entityId e, em seguida, introduza
113132
no campo Valor predefinido.Em alternativa, se a entidade tiver chaves primárias compostas em vez de especificar o entityId, pode definir o filterClause. Por exemplo,
employeeCode='5100' and startDate='2010-01-01 00:00:00'
.
Se a integração for bem-sucedida, o campo connectorOutputPayload
da tarefa do conector tem a resposta da operação de atualização.
Crie ligações com o Terraform
Pode usar o recurso do Terraform para criar uma nova associação.
Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform.
Para ver um modelo do Terraform de exemplo para a criação de ligações, consulte o modelo de exemplo.
Quando criar esta associação através do Terraform, tem de definir as seguintes variáveis no ficheiro de configuração do Terraform:
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
keyspace | STRING | True | Cassandra Keyspace |
Obtenha ajuda da comunidade do Google Cloud
Pode publicar as suas perguntas e discutir este conector na comunidade do Google Cloud nos Fóruns do Cloud.O que se segue?
- Compreenda como suspender e retomar uma associação.
- Compreenda como monitorizar a utilização do conector.
- Compreenda como ver os registos do conetor.