Azure Data Lake Storage
O conetor do Azure Data Lake Storage permite-lhe estabelecer ligação ao Azure Data Lake Storage e usar o SQL para obter e atualizar os dados do Azure Data Lake Storage.
Antes de começar
Antes de usar o conetor do Azure Data Lake Storage, 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 ver informações sobre como criar uma conta de armazenamento do Azure, consulte o artigo Criar uma conta de armazenamento. Para obter informações sobre como criar um contentor no Azure, consulte o artigo Crie um contentor. Para obter informações sobre como criar um diretório no Azure, consulte o artigo Crie um diretório.
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.
As regiões suportadas para conetores incluem:
Para ver a lista de todas as regiões suportadas, consulte o artigo Localizações.
- Clicar em Seguinte.
- Região: selecione uma localização na lista pendente.
- Na secção Detalhes da associação, conclua o seguinte:
- Conetor: selecione Azure Data Lake Storage 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.
- Conta: esta propriedade especifica o nome da conta do Azure Data Lake Storage.
- Diretório: esta propriedade especifica o caminho raiz para listar ficheiros e pastas.
- Sistema de ficheiros: esta propriedade especifica o nome do sistema de ficheiros que vai ser usado numa conta de armazenamento de 2.ª geração. Por exemplo, o nome do contentor de blobs do Azure.
- Tamanho do fragmento: o tamanho dos fragmentos (em MB) a usar ao carregar ficheiros grandes.
- Incluir subdiretórios: escolha se os caminhos dos subdiretórios devem ser apresentados na vista Recursos no esquema ADLSGen2.
- Opcionalmente, clique em + Adicionar etiqueta para adicionar uma etiqueta à associação sob a forma de um par chave/valor.
- Clicar em Seguinte.
-
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 Azure Data Lake Storage:
- Assinatura de acesso partilhado
- Chave de acesso à conta
- Autenticação JWT
- Clicar 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.
-
Assinatura de acesso partilhado
- Assinatura de acesso partilhado: segredo do Gestor Secreto que contém a assinatura de acesso partilhado.
-
Chave de acesso à conta
- Chave de acesso à conta: segredo do Secret Manager que contém a chave de acesso à conta.
-
Autenticação JWT
- ID de cliente: o ID de cliente usado para pedir tokens de acesso.
- Chave privada: segredo do Secret Manager que contém o conteúdo do ficheiro de chave privada no formato PEM. A chave privada tem de corresponder à chave pública/certificado.
- Palavra-passe da chave privada: segredo do Secret Manager que contém a palavra-passe (frase de acesso) do ficheiro de chave privada.
Exemplos de configuração de ligação
Esta secção apresenta os valores de exemplo para os vários campos que configura quando cria a ligação do Azure Data Lake Storage.
Tipo de ligação de assinatura de acesso partilhado
Nome do campo | Detalhes |
---|---|
Localização | us-central1 |
Conetor | azuredatalakestorage |
Versão do conetor | 1 |
Nome da ligação | adls-gen2-conn-public |
Ative o Cloud Logging | Sim |
Conta de serviço | account@my-project.iam.gserviceaccount.com |
Conta | google-cloud-dslgen3 |
Diretório | diretório |
Sistema de ficheiros | contentor |
Incluir subdiretórios | Não |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Assinatura de acesso partilhado | SHARED_ACCESS_SIGNATURE |
Versão do secret | 1 |
Tipo de ligação da chave de acesso à conta
Nome do campo | Detalhes |
---|---|
Localização | us-central1 |
Conetor | azuredatalakestorage |
Versão do conetor | 1 |
Nome da ligação | azure-data-lake-conn |
Ative o Cloud Logging | Sim |
Conta de serviço | account@my-project.iam.gserviceaccount.com |
Conta | google-cloud-dslgen3 |
Diretório | north-america |
Sistema de ficheiros | contentor |
Incluir subdiretórios | Não |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Chave de acesso à conta | ACCOUNT_ACCESS_KEY |
Versão do secret | 1 |
Tipo de ligação de autenticação JWT
Nome do campo | Detalhes |
---|---|
Localização | us-central1 |
Conetor | azuredatalakestorage |
Versão do conetor | 1 |
Nome da ligação | adls-gen2-jwt-conn |
Ative o Cloud Logging | Sim |
Conta de serviço | account@my-project.iam.gserviceaccount.com |
Conta | your-adls-account-name |
Diretório | north-america |
Sistema de ficheiros | data-lake-container |
Incluir subdiretórios | Sim |
Número mínimo de nós | 2 |
Número máximo de nós | 50 |
Tipo de autenticação | Autenticação JWT |
ID do cliente | CLIENT_ID |
Chave privada | PRIVATE_KEY_SECRET |
Palavra-passe da chave privada | PRIVATE_KEY_PASSWORD_SECRET |
Versão do Secret (para a chave privada) | 1 |
Versão do Secret (para palavra-passe da chave privada) | 1 |
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 Azure Data Lake Storage pode processar 5 transações por segundo, por nó, e limita todas as transações que excedam este limite. Por predefinição, os Integration Connectors atribuem 2 nós (para uma melhor disponibilidade) a uma ligação.
Para informações sobre os limites aplicáveis aos Integration Connectors, consulte Limites.
Ações
Esta secção apresenta as ações suportadas pelo conetor. Para compreender como configurar as ações, consulte os exemplos de ações.
Ação DownloadFile
Esta ação permite-lhe transferir o conteúdo de um blob específico de um diretório ou um contentor.
Introduza os parâmetros da ação DownloadFile
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
Caminho | String | Sim | O caminho do ficheiro (incluindo o nome do ficheiro) a transferir. Por exemplo:
|
HasBytes | Booleano | Não | Se o conteúdo deve ser transferido como bytes (formato Base64).
false .
|
Parâmetros de saída da ação DownloadFile
Se a ação for bem-sucedida, devolve o conteúdo do ficheiro ou do blob.
Por exemplo, para saber como configurar a ação DownloadFile
, consulte os exemplos de ações.
Ação CreateFile
Esta ação permite-lhe criar um blob ou um ficheiro num contentor ou num diretório.
Parâmetros de entrada da ação CreateFile
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
Caminho | String | Sim | O caminho do ficheiro que vai ser criado. |
Por exemplo, para saber como configurar a ação CreateFile
, consulte os exemplos de ações.
Ação CopyFile
Esta ação permite-lhe copiar o conteúdo de um ficheiro ou um blob para outro ficheiro ou blob no mesmo contentor ou diretório.
Introduza os parâmetros da ação CopyFile
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
SourcePath | String | Sim | O caminho do ficheiro que vai ser copiado. |
DestinationPath | String | Sim | O caminho do ficheiro para onde vai ser copiado. |
Por exemplo, para saber como configurar a ação CopyFile
, consulte os exemplos de ações.
Ação DeleteObject
Esta ação permite-lhe eliminar um ficheiro ou um blob.
Parâmetros de entrada da ação DeleteObject
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
Recursivo | String | Não | Defina esta opção como true para eliminar todo o conteúdo da pasta, incluindo quaisquer subpastas. |
Caminho | String | Sim | O caminho do ficheiro ou da pasta a eliminar. |
DeleteType | String | Sim |
|
Por exemplo, para saber como configurar a ação DeleteObject
, consulte os exemplos de ações.
Ação LeaseBlob
Esta ação permite-lhe criar e gerir um bloqueio num blob.
Parâmetros de entrada da ação LeaseBlob
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
Caminho | String | Sim | O caminho do ficheiro. |
LeaseAction | String | Sim | Especifica a ação de concessão a executar. |
LeaseDuration | Número inteiro | Sim | Especifica a duração do arrendamento. |
Por exemplo, para saber como configurar a ação LeaseBlob
, consulte os exemplos de ações.
Ação UploadFile
Esta ação permite que os utilizadores carreguem o conteúdo para um contentor ou um blob específico.
Parâmetros de entrada da ação UploadFile
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
Caminho | String | Sim | O caminho do ficheiro a carregar. |
HasBytes | Booleano | Não | Se deve carregar conteúdo como bytes. |
Conteúdo | String | Sim | Conteúdo a carregar. |
Por exemplo, para saber como configurar a ação UploadFile
, consulte os exemplos de ações.
Ação RenameObject
Esta ação permite-lhe mudar o nome de um ficheiro ou de uma pasta.
Parâmetros de entrada da ação RenameObject
Nome do parâmetro | Tipo de dados | Obrigatória | Descrição |
---|---|---|---|
Caminho | String | Sim | O caminho cujo nome vai ser alterado. |
RenameTo | String | Sim | O novo nome do ficheiro ou da pasta. |
Por exemplo, para saber como configurar a ação RenameObject
, consulte os exemplos de ações.
Exemplos de ações
Exemplo: transferir um ficheiro
Este exemplo transfere um ficheiro binário.
- Na caixa de diálogo
Configure connector task
, clique emActions
. - Selecione a ação
DownloadFile
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
:{ "Path": "testdirectory1/test1.pdf", "HasBytes": true }
Se a ação for bem-sucedida, o parâmetro de resposta da tarefa terá um valor semelhante ao seguinte:DownloadFile
connectorOutputPayload
[{ "Success": "True", "ContentBytes": "UEsDBBQABgAIAAAAIQCj77sdZQEAAFIFAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooA" }]
Exemplo: carregar um ficheiro
Este exemplo carrega conteúdo como um blob.
- Na caixa de diálogo
Configure connector task
, clique emActions
. - Selecione a ação
UploadFile
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
:{ "Path": "testblob4", "HasBytes": true, "Content": "abcdef\nabcdef" }
Se a ação for bem-sucedida, o parâmetro de resposta da tarefa terá um valor semelhante ao seguinte:UploadFile
connectorOutputPayload
[{ "Success": "true" }]
Exemplo: crie um ficheiro
Este exemplo cria um ficheiro no diretório especificado.
- Na caixa de diálogo
Configure connector task
, clique emActions
. - Selecione a ação
CreateFile
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
:{ "path": "testdirectory1/testblob" }
Se a ação for bem-sucedida, o parâmetro de resposta da tarefa terá um valor semelhante ao seguinte:CreateFile
connectorOutputPayload
[{ "Success": "true" }]
Exemplo: copie um ficheiro
Este exemplo copia um ficheiro de uma localização para outra.
- Na caixa de diálogo
Configure connector task
, clique emActions
. - Selecione a ação
CopyFile
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
:{ "SourcePath": "testdirectory1/testblob", "DestinationPath": "testblob" }
Se a ação for bem-sucedida, o parâmetro de resposta da tarefa terá um valor semelhante ao seguinte:CopyFile
connectorOutputPayload
[{ "Success": "true" }]
Exemplo: elimine um blob
Este exemplo elimina o blob especificado.
- Na caixa de diálogo
Configure connector task
, clique emActions
. - Selecione a ação
DeleteObject
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
:{ "path": "testdirectory1/testblob" }
Se a ação for bem-sucedida, o parâmetro de resposta da tarefa terá um valor semelhante ao seguinte:DeleteObject
connectorOutputPayload
[{ "Success": "true" }]
Exemplo: arrendar um blob
Este exemplo arrenda o blob especificado.
- Na caixa de diálogo
Configure connector task
, clique emActions
. - Selecione a ação
LeaseBlob
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
:{ "Path": "testblob2", "LeaseAction": "Acquire", "LeaseDuration": 60.0 }
Se a ação for bem-sucedida, o parâmetro de resposta da tarefa terá um valor semelhante ao seguinte:LeaseBlob
connectorOutputPayload
[{ "LeaseId": "7aae9ca2-f015-41b6-9bdf-5fd3401fc493", "Success": "true" }]
Exemplo: mude o nome de um blob
Este exemplo muda o nome de um blob.
- Na caixa de diálogo
Configure connector task
, clique emActions
. - Selecione a ação
RenameObject
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
:{ "Path": "testblob", "RenameTo": "testblob6" }
Se a ação for bem-sucedida, o parâmetro de resposta da tarefa terá um valor semelhante ao seguinte:RenameObject
connectorOutputPayload
[{ "Success": true }]
Exemplos de operações de entidades
Esta secção mostra como realizar algumas das operações de entidades neste conector.
Exemplo: lista todos os registos
Este exemplo apresenta todos os registos na entidade Resource
.
- Na caixa de diálogo
Configure connector task
, clique emEntities
. - Selecione
Resource
na listaEntity
. - Selecione a operação
List
e, de seguida, clique em Concluído. - Opcionalmente, na secção Entrada de tarefas da tarefa Conectores, pode filtrar o conjunto de resultados especificando uma cláusula de filtro. Especifique sempre o valor da cláusula de filtro entre aspas simples (').
Exemplo: obter um registo
Este exemplo obtém um registo com o ID especificado da entidade Resource
.
- Na caixa de diálogo
Configure connector task
, clique emEntities
. - Selecione
Resource
na listaEntity
. - Selecione a operação
Get
e, de seguida, clique em Concluído. - Na secção Entrada de tarefas da tarefa Conetores, clique em EntityId e, de seguida,
introduza
testdirectory1/testblob1
no campo Valor predefinido.Aqui,
testdirectory1/testblob1
é um ID de registo exclusivo na entidadeResource
.
Use a ligação do Azure Data Lake Storage 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.
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.