AWS S3
Ferramenta de armazenamento de objetos oferecida pela Amazon Web Services, Inc. A Dadosfera replica os dados e carrega na Dadosfera.
Funcionalidades
Funcionalidade | Suportado | Notas |
---|---|---|
Definir frequência da pipeline | Sim | |
Sincronização Incremental | Sim | |
Sincronização Full load | Não | |
Seleção das entidades | Não | |
Seleção de colunas | Não | |
Micro-transformação: Hash | Não |
Tipos de arquivos
Os tipos de arquivos suportados atualmente são: CSV, JSON e Parquet.
É possível carregar apenas um tipo de arquivo por vez.
Guia rápido
Para iniciar a criação de uma Pipeline, basta ir no módulo Coletar, "Pipelines" aperte em "Nova Pipeline".
Escolha a fonte de dados
Utilize uma fonte já cadastrada ou cadastre uma nova
Parâmetros para conexão (cadastro da fonte)
Nome do campo | Descrição | Exemplo |
---|---|---|
Access Key ID | Access key fornecido de um IAM user ou AWS account root user. Deve possuir 20 caracteres. | ACHLNDKM6AIPSWH3TP |
Secret Access Key | Chave secreta fornecido em conjunto com a AWS Access Key. Deve possuir 40 caracteres. | KwYmQq/zZQAjc+pMRiQ |
Informações da pipeline
Atribua o nome e uma breve descrição para sua Pipeline.
Parâmetros de configurações da pipeline (CSV)
Preencha os campos abaixo com os parâmetros e clique em "Continuar".
Nome do campo | Descrição | Exemplo |
---|---|---|
Tipo de arquivo | CSV | - |
Nome | Nome descritivo do arquivo | Minha planilha |
Bucket | Nome do bucket de origem do arquivo | meu_bucket |
Nome do arquivo a ser extraído | Nome do caminho para chegar ao arquivo. É todo o conteúdo após o nome do bucket. (Observação: o nome do arquivo não deve conter espaços e caracteres especiais para o sucesso da etapa de coleta) | meusdados/2021/dados.csv |
Separador | Caractere delimitador das colunas no arquivo | ";" ou "," ou "tab" ou "/" |
Tipo de codificação | Padrão do conjunto de caracteres | UTF-8: ISO-8859-1: US-ASCII: UTF-16BE: UTF-16: UTF-16LE: |
Ativar cabeçalho | O arquivo possui cabeçalho? | - |
CSV com multiline
Caso o seu CSV possua dados que se quebram em linhas, ele só será coletado corretamente para a Dadosfera caso estiver entre aspas. Exemplo:
name,age,address john,29,"19 Street Ohio"
Multiline não aceito:
name,age,address john, 29, 19 Street Ohio
Parâmetros de configurações da pipeline (JSON)
Nome do campo | Descrição | Exemplo |
---|---|---|
Tipo de arquivo | JSON | - |
Nome | Nome descritivo do arquivo | Minha planilha |
Bucket | Nome do bucket de origem do arquivo | meu_bucket |
Nome do arquivo a ser extraído | Nome do caminho para chegar ao arquivo. É todo o conteúdo após o nome do bucket. (Observação: o nome do arquivo não deve conter espaços e caracteres especiais para o sucesso da etapa de coleta) | meusdados/2021/dados.csv |
Tipo de codificação | Padrão do conjunto de caracteres | UTF-8: ISO-8859-1: US-ASCII: UTF-16BE: UTF-16: UTF-16LE: |
Parâmetros de configurações da pipeline (Parquet)
Nome do campo | Descrição | Exemplo |
---|---|---|
Tipo de arquivo | Parquet | - |
Nome | Nome descritivo do arquivo | Minha planilha |
Bucket | Nome do bucket de origem do arquivo | meu_bucket |
Nome do arquivo a ser extraído | Nome do caminho para chegar ao arquivo. É todo o conteúdo após o nome do bucket. (Observação: o nome do arquivo não deve conter espaços e caracteres especiais para o sucesso da etapa de coleta) | meusdados/2021/dados.csv |
Nunca utilize / no início ou no fim do campo "Nome do Arquivo"
A Dadosfera já considera o primeiro nome como a primeira pasta dentro de um bucket. Então, caso você tenha essa estrutura abaixo, use somente
data/2023
para extrair todos os arquivos.csv
dentro da pasta2023
:data/ |-- 2023/ |-- 01/ |-- 0.csv |-- 1.csv |-- 02/ |-- 0.csv |-- 1.csv
Carga Incremental
Ao trabalhar com a Amazon S3, frequentemente nos deparamos com uma organização hierárquica de dados. Uma estrutura comum é ter um diretório principal (por exemplo, "data") e dentro dele vários subdiretórios que segmentam os dados, muitas vezes por períodos, como meses ou anos.
Estrutura de exemplo:
data/
|-- year=2023/
|-- month=01/
|-- 0.csv
|-- 1.csv
|-- month=02/
|-- 0.csv
|-- 1.csv
No exemplo acima, data é nosso diretório principal e 2023/01/
e 2023/02/
são subdivisões (muitas vezes chamadas de "partições"). Cada partição contém arquivos de dados individuais.
Nesta abordagem incremental, criamos uma única pipeline que aponta para o diretório principal (Nome do arquivo a ser extraído= data
, sem barras). Essa pipeline é inteligente o suficiente para identificar e extrair todos os arquivos das subdivisões ou partições de forma automática.
Informações importantes sobre o funcionamento
Aqui abaixo vão algumas informações importantes sobre o funcionamento deste tipo de Conexões/Pipelines
Deleção de Assets
Ao usar um Pipeline S3 em modo incremental (leia mais acima) você não pode alterar o nome da pipeline ou excluir os ativos já criados. Se fizer isso, a pipeline entrará em estado de erro e deverá ser recriada.
Caracteres especiais
Ainda que o "Tipo de codificação" seja ajustado, é possível que por padrão de parâmetro, caracteres especiais não apareçam no catálogo.
Observações gerais sobre tipos de dados:
Uma coluna somente será reconhecida como o tipo number quando todos os elementos da coluna forem números inteiros.
Uma coluna somente será reconhecida como sendo do tipo float quando todos os elementos da coluna seguirem o padrão do tipo de dado para números de pontos flutuante, ou seja, um número racional (ex: xxxx.xx).
O uso de vírgulas na formatação numérica (x,xxx.xx) implica em uma conversão de uma coluna do tipo text.
Sobre tipos de colunas
- Uma coluna somente será reconhecida como o tipo number quando todos os elementos da coluna forem números inteiros.
- Uma coluna somente será reconhecida como sendo do tipo float quando todos os elementos da coluna seguirem o padrão do tipo de dado para números de pontos flutuante, ou seja, um número racional (ex: xxxx.xx).
- O uso de vírgulas na formatação numérica (x,xxx.xx) implica em uma conversão de uma coluna do tipo text.
Frequência
- Por último, configure a frequência desejada para que sua pipeline rode. É possível escolher dentre as opções apresentadas ou inserir uma frequência customizada através de uma expressão cron. Para saber mais, acesse.
Pronto! Agora basta aguardar a coleta ser feita no horário e dia agendado.
Caso queira executar a pipeline imediatamente, é possível executá-la manualmente. Vá em "Pipelines", "Lista" e "Sincronizar Pipeline".
Após alguns minutos, sua pipeline estará catalogada na aba de exploração como um Data Asset.
A tabela será catalogada adicionando a coluna _processing_timestamp. Dessa forma, em coletas incrementais que os valores sejam sobrescritos, será possível coletar o último valor do registro. Além disso, a coluna com a data de quando o registro foi escrito ajudará nas análises dos dados.
É possível também consultar na lista de pipelines os detalhes da pipeline, como: resumo, lista de entidades e colunas coletadas, histórico de execução e de micro-transformação, em "Ver pipeline".
Updated 2 months ago