Pré-requisito
- Um Braincube IoT Server
- O aplicativo ADLS instalado (consulte o appsmanager para instalar um novo aplicativo)
- Uma instância do Azure DataLake Storage
As configurações dos nós (Nodes settings)
Uma vez instalado o aplicativo ADLS, você encontrará novos nós na sua paleta de nós:
- ADLS list
- ADLS read
- ADLS connection (nó de configuração, não fica no painel esquerdo)
ADLS Connection
Como qualquer conector Braincube, você precisa criar uma conexão que possa ser reutilizada em qualquer nó deste tipo. Você pode criar uma nova conexão selecionando "Add new adls" e clicando no botão de edição ao lado dele:

Para o ADLS, eis o que é necessário:
- Node name: dê um nome para sua conexão para encontrá-la facilmente
- Primary endpoint (obrigatório): Esta é a URL do seu Azure Blob FileSystem (ABFS) fornecida pela Azure.
-
Authentication method: Escolha entre três métodos de autenticação:
- Default azure credentials: utilizável apenas se o IoT Server e o ADLS estiverem no mesmo tenant. O Client ID deve ser informado pela variável de ambiente, mas também pode ser substituído nas configurações do nó
- Secret: Tenant e Client ID devem ser especificados para conectar ao seu ADLS, e um segredo (secret) gerado a partir da plataforma deve ser fornecido
- Shared keys: Uma chave de acesso gerada na sua conta do Azure Storage (Azure Storage account)
Assim de configurar isso, você pode clicar em Add, Done, Deploy para salvar as configurações e depois voltar à configuração deste nó.
ADLS List
O nó ADLS-list foi projetado para ajudá-lo a explorar seu armazenamento Azure e sua árvore de pastas.
Você pode facilmente arrastar e soltar este nó da paleta para seu fluxo de dados (dataflow) e começar a trabalhar com ele. A primeira coisa a fazer é configurar o nó (consulte acima para criar uma nova conexão, caso nenhuma exista).

Para listar no nó ADLS, você escolherá:
- List Type: Se deseja listar estruturas de diretórios, arquivos ou um sistema de arquivos.
- Filesystem name: Alvo do sistema de arquivos para sua pesquisa
- Subpath research: Especifique a pasta que deseja explorar
- Filter regex: Qual expressão regular (regex) deseja aplicar para filtrar as informações.
-
Output format: Em qual formato gostaria de receber a resposta?
- One message per listed element: pode ser útil para alimentar um fluxo de dados em tempo real
- All listed elements as an array: pode ser usado para extrair um conjunto de dados a ser enviado para outro local para armazenamento.
ADLS Read
O nó ADLS-read foi projetado para ajudá-lo a ler o conteúdo de um arquivo do seu Azure Storage.
Você pode arrastar e soltar facilmente este nó da paleta para o seu fluxo de dados (dataflow) e começar a trabalhar com ele. Como de costume, depois de escolher a conexão na lista que criou anteriormente (veja acima para criar uma nova), poderá configurar a extração que deseja realizar.

Para ler um arquivo, você escolherá:
- Filesystem name: Caminho do sistema de arquivos onde o arquivo buscado está guardado
- Filename: Nome de arquivo completo dos arquivos que deseja ler
- Destination: o sistema de arquivos gravará o arquivo no IoT Server Storage Manager, sob a pasta BraincubeAppsData/@Braincube-adls/{YOUR_UUID_NODE}/{YOUR_FILENAME} ou um Buffer para obter o conteúdo diretamente no seu fluxo de dados (dataflow).
Exemplo
Você pode encontrar um exemplo de como implementamos uma lógica de listagem e leitura (list & read) abaixo:
Este fluxo é composto por:
Inject: este nó dispara a extração, escolhemos configurar este nó no "modo intervalo" para disparar a extração automaticamente a cada XX segundos
ADLS - List node: este nó é o que trabalhamos durante este artigo, ele se conecta a uma instância ADLS e lista os arquivos no caminho selecionado
ADLS - Read node: este nó extrai o conteúdo selecionado após o nó de listagem
CSV: transforma o conteúdo em formato CSV dos arquivos lidos em um objeto que pode ser transferido para a plataforma de nuvem Braincube Cloud.
braincubeTransfert: este nó faz o upload dos dados para o seu ambiente Braincube

Recursos disponíveis
O conector Braincube ADLS cobre os seguintes recursos:
| Recurso | Disponibilidade |
|---|---|
| Listing | SIM (YES) |
| Read | SIM (YES) |
| Write | NÃO (NO) |
| Delete | NÃO (NO) |
| Move | NÃO (NO) |
O desempenho de seu nó ADLS dependerá da conexao de rede entre o seu IoT Server e seu Azure Datalake. Pode variar de poucos Ko/s a vários Mo/s dependendo de sua velocidade de internet.