DEV Community

Guilherme Manzano
Guilherme Manzano

Posted on

2

Introdução à Engenharia de Dados

Alt Text

O Engenheiro de Dados é responsável por criar e pavimentar a trilha de dados que os dados vão percorrer, desde a sua concepção até sua disponibilização para Analistas, Cientistas de Dados e níveis Operacionais e Gerenciais. Ou seja, o papel de um Engenheiro de Dados é acompanhar todo o processo e o caminho dos dados, não só como eles serão armazenados e distribuídos, mas também qual é a melhor forma para limpá-los, transformá-los e transportá-los. Aliados a isso, o Engenheiro de Dados deve conhecer as ferramentas do mercado para lidar com os dados e suas respectivas vantagens e desvantagens, de acordo com o perfil de cada cliente e tipo de problema que precisa solucionar, fazendo com que as aplicações sejam escaláveis, disponíveis e otimizados em relação aos custos. Existem quatro palavras que acompanharão a carreira de um Engenheiro de Dados:

· Coleta = na coleta de dados, é necessário que o Engenheiro de Dados saiba escolher ferramentas de forma a acompanhar a entrada das informações. As falhas devem ser imediatamente detectadas (como um equipamento que sofreu curto circuito) e, além disso, as ferramentas devem ser provisionadas de forma a ler todos esses dados e, caso necessário, distribui-los para seus respectivos caminhos;
· Transformação = o dado nem sempre chega na forma que é esperado, e será trabalho do Engenheiro de Dados também relaciona-lo de forma que agregue valor a ele, e que ele seja de fácil entendimento e relação, além de detectar inconsistência e problemas. Os valos inconsistentes devem ser retirados, de forma que não poluam a forma final dos dados. As ferramentas escolhidas devem proporcionar agilidade em carregar e checar estes dados;
· Armazenamento = após o Engenheiro de Dados montar boas relações entre os dados, é preciso armazena-los, de forma centralizada ou distribuída. É necessário que o Eng. de Dados saiba dimensionar os serviços que vão armazenar os dados, de forma correta e eficiente, pensando sempre nos casos de uso dos clientes;
· Distribuição = o Engenheiro de Dados deve disponibilizar os dados de forma simples, segura e eficiente. A distribuição de dados depende da quantidade de profissionais que trabalharão na solução, o que gera perfis dentro da Engenharia de Dados.

Os perfis de Engenheiro de Dados (papeis) são divididos em:

· Analista: realiza as análises dos dados que, quando bem organizados, fornecem informações importantes sobre o negócio. O valor entregue será o provisionamento em larga escala e um modelo ligado diretamente ao aprendizado de máquina;
· Construtor: é responsável por pensar nas situações em que o negócio se expande e tem seu sistema aplicado a outros locais, provendo um ambiente que contemple as necessidades atuais com a comunicação rápida, munida de backup e alta disponibilidade;
· Desenvolvedor: buscará a solução de questões particulares e/ou otimizadas para demandas especificas, seja uma nova ou uma adaptação da antiga. Os desenvolvedores também vão interagir com os serviços em Nuvem, interligando os dois sistemas, necessitando que o profissional dessa área tenha conhecimentos de Arquitetura e Desenvolvimento de Software;

· Generalista: os conhecimentos deste profissional devem abranger os sistemas locais, o caminho das informações no servidor, como funcionam os bancos de dados, bem como as ferramentas necessárias para a manutenção e construção de softwares. É importante também que ele tenha experiência com ambientes Linux e linguagens de programação que lidam com dados.

Data Storages são bancos de dados usualmente não-relacionais, que são utilizados para armazenar arquivos, e-mails, log, etc.; além de informações utilizando um mapeamento chave-valor. Como cada um possui uma chave única, o arquivo poderá ser subscrita toda vez que algo for recarregada com a mesma chave. Além disso, não há relacionamento entre os itens guardados, como no uso do comando JOIN, que faz a agregação. Com relação ao transporte de dados, podemos dividi-los em:

· Streaming = corresponde ao processamento em tempo real, ou seja, são processados ou consumidos a medida que são gerados;

· Transmissão por Lotes = lida com maiores volumes de dados. Por exemplo, seria como pães em uma padaria que se originam em lotes de massas assadas, os quais são preparadas após o termino do processo anterior.

Top comments (0)

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More