Azure Cloud Storage
O Azure Cloud Storage é o serviço de armazenamento de objetos gerenciado da Microsoft para dados não estruturados, incluindo texto, arquivos binários, mídia, logs e backups de aplicativos. Ele oferece suporte a camadas de acesso quente, frio e de arquivo, oferece replicação geo-redundante e se integra ao Microsoft Entra ID (anteriormente Azure Active Directory) para controle de acesso seguro.
O Qlik Talend Cloud se conecta ao Azure Cloud Storage usando um aplicativo (entidade de serviço) do Microsoft Entra ID que tem acesso de leitura ao contêiner da conta de armazenamento de destino. O conector recupera arquivos do contêiner especificado, descobre automaticamente esquemas amostrando o conteúdo do arquivo e executa a replicação de dados incremental com base nos carimbos de data/hora de modificação do arquivo.
Preparando para autenticação
Para acessar seus dados, você precisa autenticar a conexão com as credenciais da sua conta.
Para configurar sua conta do Azure Cloud Storage, você precisa:
- Uma assinatura do Azure com uma conta do Azure Storage.
- Um contêiner de blob na conta de armazenamento que contém os arquivos a serem replicados.
- Um registro de aplicativo do Microsoft Entra ID com um segredo do cliente.
- A função Leitor de dados de blob de armazenamento atribuída ao principal de serviço do aplicativo, com escopo para a conta de armazenamento ou o contêiner específico. Essa é a função de privilégio mínimo recomendada para acesso somente leitura.
Para registrar um aplicativo Microsoft Entra ID e recuperar suas credenciais:
- Faça login na sua conta Azure.
- Navegue até Microsoft Entra ID > Registros de aplicativo > Novo registro.
- Insira as seguintes informações de seu aplicativo:
- Nome: insira um nome, por exemplo QlikDataIntegration.
- Tipos de conta suportados: selecione Contas somente neste diretório organizacional.
- Clique em Registrar.
- Na página Visão geral do aplicativo, copie o ID do aplicativo (cliente) e o ID do diretório (locatário) e salve-os em um arquivo seguro.
- Navegue até Certificados e segredos > Segredos do cliente > Novo segredo do cliente.
- Insira uma descrição e selecione um período de expiração para o segredo do cliente.
- Clique em Adicionar.
- Copie o valor do segredo do cliente e salve-o em um arquivo seguro.
- No portal do Azure, abra sua conta de armazenamento e navegue até Controle de acesso (IAM) > Adicionar > Adicionar atribuição de função.
- Selecione a função Leitor de dados de blob de armazenamento e atribua esta função ao aplicativo que você acabou de registrar.
- Clique em Salvar.
Formatos de arquivo não suportados
- Arquivos de texto delimitado:
.csv,.tsv,.psv,.txt(com delimitador configurável) - Linhas JSON:
.jsonl - Parquet:
.parquet - Avro:
.avro - Excel:
.xlsx(várias pastas de trabalho por pasta são suportadas; as linhas de cada pasta são replicadas e o nome da pasta é anexado à coluna_sdc_source_file) - Arquivos compactados com Gzip:
.gz(contendo qualquer um dos formatos acima)
Criando a conexão
Para obter mais informações, consulte Conectando-se a aplicativos SAP.
- Preencha as propriedades de conexão obrigatórias.
-
Forneça um nome para a conexão em Nome da conexão.
-
Selecione Abrir metadados de conexão para definir metadados para a conexão quando ela for criada.
-
Clique em Criar.
| Configuração | Descrição |
|---|---|
| Gateway de dados |
Selecione um Gateway Data Movement se for necessário para seu caso de uso. Nota informativa
Esse campo não está disponível com a assinatura do Iniciante do Qlik Talend Cloud, pois esta não é compatível com o Gateway Data Movement. Se você tiver outro nível de assinatura e não quiser usar o Gateway Data Movement, selecione Nenhum. Para obter informações sobre os benefícios do Gateway Data Movement e casos de uso que exigem isso, consulte Qlik Data Gateway - Movimentação de dados. |
| Data inicial |
Digite a data, no formato |
| Nome da conta de armazenamento | Nome da conta de armazenamento do Azure, por exemplo, mystorageaccount sem https:// ou .blob.core.windows.net. |
| Nome do contêiner | Nome do contêiner de blob, por exemplo my-container. |
| ID do locatário | ID do locatário. |
| Tabelas | A configuração da tabela determina quais arquivos são lidos e como seus conteúdos são interpretados. Cada definição de tabela inclui um padrão de pesquisa de arquivo, um nome de tabela e configurações opcionais para personalizar o tratamento de arquivos. |
| ID do cliente | ID do cliente. |
| Segredo do cliente | Segredo do cliente. |
Configuração de tabelas
Cada entrada na configuração de tabelas representa uma tabela lógica derivada de arquivos no contêiner. As propriedades a seguir podem ser configuradas para cada tabela:
| Propriedade | Obrigatório ou opcional | Descrição |
|---|---|---|
| Nome da tabela | Obrigatório | Especifique o nome da tabela lógica (por exemplo, my_orders_csv). Esse se torna o nome do fluxo no Qlik Talend Cloud. |
| Padrão de pesquisa | Obrigatório | Forneça uma expressão regular para corresponder a nomes de arquivo (por exemplo, .*\.csv$ corresponde a todos os arquivos CSV). Aplique isso a nomes de arquivo dentro do contêiner ou do diretório especificado, se fornecido. |
| Diretório | Opcional | Insira um prefixo de caminho de pasta dentro do contêiner para restringir a pesquisa de arquivo (por exemplo, exports/orders/). Melhore o desempenho limitando os arquivos verificados. Essa não é uma expressão regular. |
| Chave primária | Opcional | Defina uma lista de nomes de coluna separados por vírgulas para usar como chave primária (por exemplo, id ou id,date). Para arquivos CSV, use nomes de campos de cabeçalho; para arquivos JSONL, use chaves de objeto de nível superior. Deixe em branco para usar a replicação de tabela completa. Preencha para habilitar a replicação incremental com base no tempo de modificação do arquivo. |
| Especificar campos de data e hora | Opcional | Liste os nomes das colunas, separados por vírgulas, a serem tratados como campos de data/hora, mesmo que não sejam detectados automaticamente durante a descoberta do esquema (por exemplo, created_at, updated_at). |
| Delimitador | Opcional | Indique o separador de campo para arquivos de texto delimitados. O padrão é , (vírgula). Use \t para arquivos TSV ou | para arquivos PSV. Se não especificado, o delimitador é detectado automaticamente com base na extensão do arquivo. |
- Configure os arquivos
.jsonle.csvcomo tabelas separadas para garantir o tratamento preciso do esquema e a consistência dos dados. - Certifique-se de que todos os arquivos
.csvque correspondem a um padrão de pesquisa incluam uma linha de cabeçalho consistente com nomes e ordem de coluna idênticos. - Use chaves de atributo de objeto consistentes em todos os arquivos
.jsonldefinidos para cada tabela. Os nomes e estruturas das chaves devem estar alinhados para uma detecção de esquema confiável.
Tabelas replicadas
As tabelas são definidas na configuração de tabelas que você fornece. Cada tabela corresponde a um conjunto de arquivos no contêiner de blobs que correspondem ao padrão de pesquisa especificado e, se aplicável, ao prefixo do diretório. O conector descobre o esquema da tabela amostrando até cinco arquivos por tabela, lendo cada quinta linha e analisando até 1.000 registros por arquivo.
A replicação usa uma abordagem incremental baseada em carimbos de data/hora de modificação de arquivo quando uma chave primária é configurada. Os arquivos modificados após o último marcador de sincronização são processados durante cada extração. Se nenhuma chave primária for especificada, a tabela inteira será totalmente replicada em cada execução.
As seguintes colunas do sistema são adicionadas a cada tabela por padrão:
| Coluna | Descrição |
|---|---|
_sdc_source_container
|
O nome do contêiner de blob do Azure onde o registro se originou. |
_sdc_source_file
|
O caminho completo do arquivo que contém o registro. Para arquivos Excel, o nome da pasta é anexado (por exemplo, exports/q1.xlsx/Sheet1). |
_sdc_source_lineno
|
O número da linha do registro dentro do arquivo. |
_sdc_extra
|
Campos extras analisados que não correspondem ao esquema descoberto (somente arquivos .jsonl). |
Limitações e considerações
- O nome da conta de armazenamento é fornecido como um nome simples, não uma URL.
- Arquivos compactados com Gzip (
.gz) são suportados. O conector lê o nome do arquivo original do cabeçalho gzip para determinar o formato do arquivo interno. Arquivos Gzip criados com--no-name(sem nome de arquivo no cabeçalho) são ignorados. - Arquivos com extensões
.csv,.txt,.tsv,.psvou.jsonlsão verificados quanto a bytes mágicos gzip e são descompactados de forma transparente, mesmo que o arquivo não tenha uma extensão.gz. - Compactação aninhada (por exemplo, um arquivo
.gzdentro de outro.gz) não é compatível e é ignorada. - O campo Padrão de pesquisa usa sintaxe de expressão regular, não padrões glob (por exemplo, use
.*\.csv$em vez de*.csv). - Arquivos sem uma extensão reconhecida são ignorados e um aviso é emitido.
- O conector inclui lógica de repetição integrada com retirada exponencial para limites de taxa da API do Azure (HTTP 429) e erros transitórios do servidor (HTTP 500, 502, 503, 504), até cinco tentativas.
- A codificação do arquivo deve ser UTF-8.