Buscar

UNIDADE 4 ENTENDIMENTO E APLICAÇÃO DA APRENDIZAGEM DE MÁQUINA

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 1/27
ENGENHARIA DEENGENHARIA DE
DADOS DADOS 
UNIDADE 4.UNIDADE 4.
ENTENDIMENTO EENTENDIMENTO E
APLICAÇÃO DAAPLICAÇÃO DA
APRENDIZAGEM DEAPRENDIZAGEM DE
MÁQUINA MÁQUINA 
Autor: Juracy Araujo de Almeida Junior Autor: Juracy Araujo de Almeida Junior 
Revisor: Johannes Von Lochter Revisor: Johannes Von Lochter 
INICIAR
Introdução
Vivemos em um tempo em que os dados passaram a ter uma grande relevância no apoio
a decisões e no suporte estratégico de gestores e organizações. A utilização inteligente
desses dados passou a ter um grau de importância nas empresas, a ponto de estarem,
muitas vezes, em destaque no seu plano estratégico. Esse emprego dos dados não é
uma tarefa trivial e simples de ser implementada, pois exige um bom entendimento do
que se deseja alcançar, bem como o desenvolvimento de soluções que permitam
alcançar esse objetivo. 
 
Para ajudar nessa demanda, a engenharia e a ciência de dados apresentam diversas
opções em tecnologias e paradigmas, voltadas à extração de valor a partir dos dados. 
 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 2/27
Assim, nesta unidade, discorreremos sobre as necessidades e funcionalidades, que
podem ser atendidas com a utilização dos dados com um olhar voltado às demandas de
negócios, veremos como é possível extrair e organizar os dados necessários, assim
como realizar esse processo com a utilização de soluções específicas para essa
atividade de captura e movimentação dos dados.
4.1 Conhecendo as funcionalidades do projeto prático de
engenharia de dados
Nos últimos anos, passamos a vivenciar uma verdadeira inundação de dados, motivado,
principalmente, pela popularização da Internet, a chegada de dispositivos móveis
conectados e o desenvolvimento de tecnologias, apenas alguns dos motivos que
fortaleceram a circulação e produção em escala de dados. 
 
Tudo isso fez com que a academia e empresas de TI passassem a se preocupar em
como processar esse grande volume, já que, até então, a grandeza de dados existente
era aderente às soluções computacionais do momento. Não distante desse fato, o
mercado, seja na área pública ou privada, também percebeu que poderia extrair muito
mais valor de seus dados, demandando, de modo relevante, o desenvolvimento de
soluções e funcionalidades que o ajudassem, de modo mais inteligente, nas tomadas de
decisões das mais distintas áreas, como saúde, educação, ciências contábeis, comércio,
entre outras. 
 
Nesse contexto, a engenharia de dados busca atender as necessidades de negócio,
capturando os diversos tipos e fontes de dados para dar suporte na extração de valor.
Aderente a esse suporte, ter o conhecimento da área de negócio adiciona um olhar
estratégico, voltado para assuntos de interesse da organização e alinhado com os
objetivos buscados. As características e peculiaridades precisam ser considerados na
análise dos dados, pois impactam no comportamento desses. Aqui estamos falando, por
exemplo, em conhecer o cliente, quais seus hábitos, suas preferências, quais indicadores
ou métricas interessam à empresa, como os concorrentes estão agindo em determinadas
situações e outros mais. 
Para que o resultado dessa engenharia sobre os dados apresente um bom resultado,
além de mapear as necessidades do negócio , se faz necessário, também, realizar o
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 3/27
entendimento das diversas formas que os dados podem assumir, visto que estes
serão os insumos para o trabalho de análise dos dados. 
4.1.1 Mapeando os Dados com as Necessidades de Negócios
O processo de levantamento de necessidades é um passo importantíssimo no
desenvolvimento de qualquer atividade onde o executor não possui a expertise suficiente
do processo e da área de negócio envolvido. É. a partir desse mapeamento, que
adquirimos o embasamento necessário para um planejamento e ação, de forma mais
eficiente, otimizando o esforço e minimizando os custos. 
 
Quando pensamos em soluções de TI, temos a engenharia de requisitos, ramo da
engenharia de software que provê técnicas e conceitos, que darão suporte a esse
levantamento do que se deseja e é necessário ser construído. 
 
Uma boa descrição de como esse levantamento de requisitos pode ser feito é visto nesse
trecho:
Trazendo para o mundo da engenharia de dados, temos que utilizar de meios para
identificar, junto aos gestores e envolvidos, quais são as perguntas que podem ser
respondidas através de dados, dentre elas podemos exemplificar:
Tipos de perguntas
» Clique nas setas ou arraste para visualizar o conteúdo
A primeira etapa do processo é “pergunte” e busca identificar qual
o problema, o que outros fizeram no sentido de resolvê-lo e quais
as restrições que se aplicam. Em seguida, “imagine” quais são
algumas soluções, pense em alternativas, escolha a melhor
solução. Então, “planeje” desenhando um diagrama e preparando
uma lista do que precisa; “crie” seguindo seu plano e teste os
resultados. Por fim, “melhore” discutindo o que funciona, o que não
funciona e o que poderia ser melhor, modifique o seu projeto para
melhorá-lo e teste novamente (VAZQUEZ; SIMÕES, 2016, p. 19). 
das estratégias da organização?
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 4/27
Enfim, são essas e outras questões que o mapeamento dos dados em aderência ao
negócio tendem a responder. Entretanto, extrair essas perguntas junto aos envolvidos
nem sempre é uma tarefa simples, visto que muitas vezes os participantes são de níveis
hierárquicos e possuem vivências distintas, com cada um trazendo suas necessidades, e
nem sempre considerando o todo, tratando apenas da sua parte. 
Aproveitando do texto de Vazquez e Simões (2016), podemos utilizar do processo
sugerido, realizando algumas adaptações à área de dados. Primeiro devemos Perguntar
aos envolvidos que apresentem questões estratégicas da organização e muito solicitadas
pelos gestores. 
Por isso, é importante motivar os envolvidos a expor temas às perguntas que envolvam
áreas de assuntos dos negócios, e que são essenciais para organização. Por exemplo,
quantas filiais obtiveram crescimento em faturamento nos meses de março e abril, em
comparação ao ano passado? Ou qual o perfil de cliente que mais realiza compra em
lojas de determinado bairro em dias de semana? Qual a média de estornos e impacto no
faturamento por loja e período? 
A segunda etapa é imaginar ou visualizar como essas questões e dados podem ser
apresentados e se realmente colaboram para decisões, visto que um grande esforço
pode ser desperdiçado se essa análise não for realizada. Seguindo para etapa de
Planejamento, deve-se organizar como e quais dessas necessidades serão atendidas,
qual a prioridade, quem será o responsável por validar, e qual equipe irá desenvolver e
coletar esses dados, ou seja, estruturar como será atendido. 
Como a exploração desses elementos de informação
podem dar maior suporte à tomada de decisão?
De que maneiras pode-se encontrar novas oportunidades
e minimizar ameaças?
Como está o comportamento da minha organização ao
longo dos períodos?
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 5/27
Após isso, a equipe de dados realiza o mapeamento das informações de onde estão as
fontes dos dados, e iniciam a extração desses para criação do repositório, que
responderá às perguntas de negócio. Podem, por exemplo, criar e preparar uma base de
dados como um Data Warehouse(DW) .
Com o DW, as perguntas, principalmente as que necessitam de olhar sobre o histórico e
cruzamento de dados, poderão ser respondidas. 
Outra opção poderia ser a criação do conjunto de dados, para servir de fonte para
aplicação da aprendizagem de máquina para descoberta de conhecimento, como
identificação de grupos ou perfis, e até realização de predições. 
Esse fluxo tem sua primeira interação finalizada com a etapa de Melhoria , que visa
realizar uma autoavaliação com foco na evolução sobre o que está construído e, dessa
maneira, fazer com que a percepção de valor sobre os dados aumente cada vez mais.
Esse processo será constante e permanecerá sempre sendo reiniciado, pretendendo
atender cada vez mais às necessidades que os dados podem responder. O Infográfico 1
representa esse fluxo. 
Infográfico 1 - Processo de mapeamento das necessidades com os dados 
Data Warehouse representa uma grande base de dados capaz de
integrar, de forma concisa e confiável, as informações de interesse
para a empresa, que se encontram espalhadas pelos sistemas
operacionais e em fontes externas, para posterior utilização nos
sistemas de apoio à decisão. (MACHADO, 2004, p. 22)
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 6/27
Fonte: VAZQUEZ; SIMÕES, 2016, p. 19. (Adaptado). 
Kimball e Ross (2013) apresentam uma metodologia de mapeamento dos dados com as
necessidades de negócio voltado, primordialmente, para a construção de Data
Warehouse, mas que pode se encaixar ao nosso estudo. Essa metodologia é voltada
para a construção de uma matriz denominada de “bus matrix”. Segundo os autores, a
matriz serve como uma ferramenta útil para divulgar os benefícios potenciais de dados. A
proposta da “bus matrix” é que através da representação do negócio e descritores,
possamos representar as atividades primárias da organização, possíveis envolvimentos e
cruzamentos dos dados. 
 
No Quadro 1, temos um exemplo da “bus matrix” de uma empresa de varejo, e no
mapeamento dos dados alinhado com as necessidades, percebe-se que, no assunto
Pedidos de Clientes, são envolvidas as áreas e dados de PRODUTO, LOJA e CLIENTE.
Já para o assunto Estoque, temos o envolvimento de LOJA e do FORNECEDOR. Esses
dois exemplos podem ter sido originados por questões dos gestores que desejam, por
exemplo, responder à pergunta de como acompanhar quais produtos e lojas realizam
mais pedidos de clientes, e qual não loja está com o estoque adequado para essa
demanda. Observamos que são algumas questões, que esses dados e seu cruzamento
podem ser alcançados pelos gestores a partir do processo de coleta e estruturação
correta. 
Quadro 1 - Exemplo de “bus matrix” de uma empresa de varejo
PROCESSO
DE
NEGÓCIO
PRODUTO LOJA CLIENTE FORNECEDOR
Pedidos de 
Clientes
X X X
Estoque X X
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 7/27
Fonte: Elaborado pelo Autor, 2020.
4.1.2 Conhecendo as fontes e os tipos de dados
Após o mapeamento das necessidades e identificação dos dados, que serão necessários
para coleta e devida exploração, precisamos conhecer como, e de que forma, estão
disponibilizados. Além do grande volume, atualmente contamos com uma “infinidade” de
fontes e variedade de dados. 
 
Pensando em fontes, temos dados sendo gerados a partir de diversos meios, como
aplicações comerciais, aplicativos, mensagens, áudios, vídeos, sensores, comentários
em redes sociais e muitos outros. Já quando falamos da variedade de dados, Mineli,
Chambers e Dhiraj (2013) destacam que podemos ter dados tipificados como:
Dados estruturados;
Dados semiestruturados;
Dados não estruturados.
Tradicionalmente, em aplicações operacionais, os dados são armazenados de forma
organizada como dados estruturados , seguindo um layout fixo ou em tabelas com tipos
definidos (texto, número, data etc.). 
Os dados estruturados, até pouco tempo, eram os mais utilizados e comuns em
sistemas. Temos, como exemplos, os arquivos nos formatos de tabela de banco de
dados, planilhas em Excel, arquivos delimitados e muitos outros. 
Em uma tabela de banco de dados, cada linha representa um conjunto de valores, e
cada atributo, uma característica do assunto. Em uma planilha Excel, os dados são
Vendas X X X X
Comércio 
Eletrônico
X X X
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 8/27
acomodados similarmente a uma tabela de banco, sendo uma estrutura mais frágil, visto
que não possui todas as propriedades e garantias de um banco de dados. 
Um arquivo delimitado pode ser com valores separados por vírgula, ponto e vírgula ou
outro caractere. Também consideramos, como arquivo de dados estruturado, aqueles em
que os valores seguem um layout fixo, utilizando um separador. Aqui podemos destacar
que essa “estrutura” vai depender do modo como os valores serão armazenados e se
seu layout será respeitado. A Figura 1 representa um exemplo de arquivo de dados
estruturados, delimitado com o separador vírgula: 
Figura 1 – Exemplo de Arquivo CSV. 
Fonte: Elaborado pelo autor, 2020.
Como parte de uma estrutura definida, temos os dados semiestruturados . Aqui
teremos uma estrutura de dados com flexibilidade maior. Citamos exemplos dados em
formato XML (Extensible Markup Language, ou Linguagem de Marcação Estendida) ou
JSON (Javascript Object Notation, ou Notação de Objetos Javascript). 
Segundo Graves (2003), XML “é uma linguagem usada para representar dados como
uma string de texto que inclui uma ‘marcação’ intercalada a fim de descrever as
propriedades dos dados”. A marcação na XML possibilita explicar o dado, e essa
estrutura é flexível de modo que podemos inserir outras marcações, que detalham ainda
mais os dados. Como podemos ver a seguir no exemplo de XML representando os dados
de um funcionário: 
<funcionarios> 
<nome>João</nome> 
<salario>2300</salario> 
</funcionario> 
O JSON é um outro exemplo de formato que tem ganhado grande destaque,
principalmente na troca de dados, e está disponível na maioria das linguagens de
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&c… 9/27
programação. Uma de suas principais características é a facilidade de construção,
necessitando de conhecimento apenas do Javascript, linguagem de programação
utilizada na web. O JSON é organizado com o conceito chave-valor, em que uma chave é
utilizada como atributo, e o dado como o valor. Como no exemplo de notação dos dados
no formato JSON a seguir: 
“Funcionário”: {“nome”: “João”, “salario”: “2300”} 
Os dados não estruturados se qualificam por não apresentarem uma definição ou layout
conhecido e formal. Estes abarcam estruturas desenvolvidas para atender a alta
demanda de dados que estamos vivenciando atualmente, exigindo um alto poder de
processamento, grandes volumes de dados armazenados sob variados formatos, como
documentos de textos, vídeos, áudios, imagens, apresentações eletrônicas e outros. 
Na arquitetura Apache Hadoop, voltada para processamento e armazenamento de
grandes volumes de dados, são disponibilizadas estruturas em formatos binários,
pensando, justamente, em atender esse alto poder de processamento, variedade e
transferência de dados. Estamos falando o Apache Avro e Parquet. 
Segundo Vohra (2016), o Avro “é um formato de serialização de dados binários compacto
que fornece estruturas de dados variadas”. Devido seu formato binário, a estrutura do
Avro é bem compacta, possibilitando o trabalho em memória de grandes conjuntos de
dados. Segue, na Figura 2, um exemplo de um schema Avro: 
Figura 2 - Exemplo de schema Avro. 
Fonte: VOHRA, 2016, p. 305. 
Já o Parquet também se utiliza de formatobinário, orientado por coluna, provendo uma
grande performance, tendo, como característica, que colunas do mesmo tipo são
armazenadas em conjunto. Vale destacar que o Avro e o Parquet também suportam
dados estruturados, sendo que o ganho do uso desses formatos é a alta performance em
consultas, considerando o volume e variedade de dados, que podem ser armazenados. 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 10/27
VOCÊ QUER LER?
Para visualizar estudos de casos de Big Data com utilização de dados
estruturados e não estruturados, sugere-se a leitura do livro Big Data O Futuro
dos Dados e Aplicações , de Felipe Nery Rodrigues Machado. 
4.2 Aplicação do projeto prático de engenharia de dados
Com o levantamento das necessidades e dos dados, que podem atender esses
requisitos identificados, faz-se necessário entender, na prática, como ocorre a captura
das fontes envolvidas, quais critérios e pontos de atenção a considerar, quais ajustes ou
seleções de dados realizar e, por fim, efetivar a gravação dos dados no formato
desejado. 
 
Assim, uma das principais aplicações práticas da engenharia de dados visa, justamente,
utilizar dos conhecimentos necessários para a combinação de diferentes fontes de
dados, aplicando sobre soluções capazes de extrair os dados necessários de diferentes
fontes e formatos, aplicando transformações necessárias e, ao fim, realizar a inserção
em algum repositório ou arquivo para exploração. 
A realização desse processo é conhecida em Kimball e Ross (2013) como Extração,
Transformação e Carga (ETL) , e segue esse fluxo com etapas e objetivos bem
definidos. O Fluxograma 3 representa esse fluxo. Atualmente, existem diversas soluções
que auxiliam, facilitam e aceleram bastante esse processo de ETL, atendendo a dados
estruturados e não estruturados. 
Fluxograma 3 – Processo ETL
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 11/27
Fonte: SHARDA; DELEN; TURBAN, 2019, p. 174. (Adaptado).
Dentre as aplicações do ETL, podemos utilizar, para cargas de Data Warehouses,
integração de dados ou extração de dados brutos, para formação do chamado Lago de
Dados ou Data Lake. Sharma e LaPlante (2018, p. 2) definem Data Lake como “um local
central para armazenar todos os seus dados, independentemente de sua fonte ou
formato”. Assim, arquivos, bases de dados, XML e JSON, no formato bruto, são
guardados em um espaço controlado e disponível, para a organização realizar
construção de análises e exploração sobre estes.
4.2.1 Extração
A etapa da extração dos dados visa obter os dados das fontes levantadas para, a partir
desse passo, ser possível manipular e dar seguimento à estruturação, conforme o
requisito de negócio. Segundo Kimball e Ross (2013), “Extrair significa ler e compreender
os dados de origem e copiar os dados necessários para o sistema ETL para posterior
manipulação”. 
 
Entretanto, apesar desse passo aparentar ser uma simples cópia dos dados, algumas
questões devem ser consideradas e podem impactar no serviço. São elas:
Avaliação das estruturas dos dados na fonte;
Conhecimento das características do sistema de arquivo ou do Sistema de
Gerenciamento do Banco de Dados (SGBD), em que se encontra a fonte de dados;
Qualidade dos dados;
Verificação de permissão de acesso aos dados.
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 12/27
A avaliação da base, ou sistema de arquivos, é necessária para o entendimento do
modelo e estruturas que serão capturadas. Já o conhecimento do sistema de arquivo, ou
do SGBD, descreve o quanto é importante conhecer o formato em que estão os dados na
origem, para assim ser definida a tecnologia ou solução que possa conectar e consumir
essa estrutura. Essa diversidade de fontes pode apresentar dados estruturados e não
estruturados. 
 
A qualidade de dados trata de avaliar como os dados estão na fonte, visto que, se
estiverem com valores nulos, sujos, caracteres especiais, outro idioma ou outros,
poderão impactar na extração, causando muitos erros e necessitando de tratamento. Por
fim, é essencial garantir o acesso com permissões aos dados a serem extraídos. 
4.2.2 Transformação
Nessa segunda etapa do processo ETL, são realizadas tarefas que buscam manipular o
dado com o foco em qualificá-lo, aplicar uma correção ou até construir um novo dado,
que atenda uma necessidade levantada a partir dos valores recebidos. 
 
A transformação realiza limpeza e preparação dos dados para inserção na estrutura final.
Kimball e Ross (2013) destacam que, na transformação, podem ser realizadas: 
Realizações da transformação
» Clique nas setas ou arraste para visualizar o conteúdo
caracteres especiais;normalização de valores monetários em uma única
moeda. Suponha que, nos dados, existam valores na
moeda Dólar e em Real, assim, poderá ser estabelecido
um padrão e conversão para todos os valores monetários
em Real;
Tratar de elementos ausentes. Por exemplo, aplicar um
valor que identifique “ausência de valor como ‘ 1’” “não
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 13/27
Na etapa de transformações, existem outras manipulações e construções, que podem
ser realizadas para atender as necessidades mapeadas para o negócio. Através da
utilização de soluções específicas de ETL, ou até com linguagens como o SQL
(linguagem de consulta estruturada para banco de dados), JAVA e outras, podem ser
usadas expandindo as possibilidades. 
4.2.3 Carga de dados
A carga de dados é a etapa responsável por preencher as estruturas de destinos com os
devidos elementos selecionados e tratados, já atendendo as necessidades levantadas. 
 
Nesse ponto, deve-se atentar para questões ligadas a performance, e se o conjunto de
valor que identifique ausência de valor, como -1 , não
identificado”, “inexistente” entre outros;
Combinar dados de múltiplas fontes. Por exemplo, inserir
informações do CEP de dados oriundos dos Correios da
tabela de bairros;
Separar dados que precisam ser carregados para
estruturas ou repositórios diferentes. Por exemplo, do
arquivo de contribuintes, separar em dados de pessoa
física e dados de pessoa jurídica;
Ainda podemos considerar construção de valores
agregados ou resultantes de expressões. Por exemplo, a
criação de um atributo, que representa o Valor faturado
anual, resultante da sumarização dos valores de todos
meses do valor faturado mês, ou ainda a criação do
atributo lucro a ser obtido a partir do cálculo sobre faturado
e custos.
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 14/27
dados recebido no destino está válido. 
 
A performance chama atenção para que essa etapa final não impacte tanto no ambiente
e que, pelo volume de dados, também seja executado em um tempo aceitável. 
 
Sobre a validação dos dados na carga, visa verificar se a quantidade e o conjunto de
dados enviados correspondem ao que foi inserido, sendo sugerido realizar um
acompanhamento de log e batimento dos dados. 
4.2.4 Soluções de ETL
Nesse ponto, conheceremos detalhes de algumas das aplicações de mercado, que
realizam ETL buscando atender demandas que a engenharia de dados visa resolver.
Conheceremos as ferramentas Talend Data Integration Studio e o Microsoft SQL Server
Integration Service. 
» Talend Data Integration Studio
O Talend Data Integration Studio é uma solução de código aberto, que pode ser utilizada
para projetos e gerenciamento de dados de qualquer tipo ou volume. O Talend é um
software que permite a conexão, o acesso e a transformaçãode dados. Segundo
informações do site oficial, com o Talend Data Integration, é possível: 
Realizar a integração de dados ponta a ponta, através de interface simples, com o
uso da caixa de ferramentas visuais;
Acelerar o desenvolvimento e resolver problemas complexos sem escrever código;
Trabalhar de forma colaborativa, através do controle de versões;
Testar, depurar e executar com facilidade;
Realizar a gestão para distribuição, controle e monitoramento das integrações e
cargas de dados.
Sendo uma ferramenta para realização de integração e ETL, o Talend Data Integration
permite obtenção e carga para as mais diferentes fontes e tipos de dados. Observando a
Figura 3, está, em destaque, parte dos conectores, que podem ser utilizados nos
processos de carga dentro da ferramenta. Destaca-se que temos conectores para bases
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 15/27
de dados, envolvendo os principais sistemas de gerenciamento de bancos de dados:
Oracle, Sql Server, PostgreSQL, DB2, entre outros. Além desses conectores, também
existem outros que prestigiam arquivos delimitados, atendendo dados estruturados e
semiestruturados. 
Figura 3 – Conectores no Talend Data Integration. 
Fonte: Elaborado pelo autor, 2020.
São inúmeros os conectores oferecidos na solução, prestigiando, também, fontes de
dados na nuvem, soluções de grandes dados, dados não estruturados, como o Parquet e
Avro, utilização junto do ecossistema Hadoop, Spark e muitos outros, sempre voltados
para a realização de integração e ETL de dados entre ambientes. 
 
Para as transformações dos dados, a paleta de objetos oferece diversas ferramentas
para, por exemplo, a realização de agregações, retiradas de duplicidades, filtros e outros.
Inclusive, é possível a aplicação de códigos em Java, expandindo as possibilidades. 
 
Na Figura 4, podemos observar um exemplo de ETL simples no Talend, extraindo os
dados de um arquivo delimitado CSV, componente nomeado de CSVPRODUTO,
realizando eventuais transformações através do componente tMap e carregando, no
destino, uma tabela Oracle, representada pelo componente tDBOtput_1. 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 16/27
Figura 4 – Exemplo de ETL no Talend Open Studio. 
Fonte: Elaborado pelo autor, 2020.
O Talend funciona organizado em Jobs ou mapeamentos, estruturas onde os objetos
envolvidos no ETL são posicionados e configurados, podendo ser adicionados
conectores de fontes de dados, objetos de transformações, saídas de dados, tratamentos
de erros, logs e muito mais. 
» Microsoft SQL Server Integration Service
O Microsoft SQL Server Integration Service (SSIS) é uma solução que faz parte da suíte
de Business Intelligence, desenvolvida pela Microsoft, mas assim como o Talend, é
utilizado para integrações e ETL. Segundo a documentação do SSIS (2020), trata-se de
uma plataforma para criar integração de dados em nível empresarial e soluções de
transformação de dados. 
 
Dentre os problemas que podem ser resolvidos com o SSIS, segundo documentação,
destacam-se: 
Copiar ou baixar arquivos, carregando para data Warehouse, limpando e minerando
dados e gerenciando objetos e dados;
Extrair e transformar dados em uma ampla variedade de fontes, como arquivos de
dados XML, arquivos simples e fontes de dados relacionais, e transferir dados para
um ou mais destinos;
Através de um conjunto avançado de tarefas internas e transformações, as
ferramentas gráficas possibilitam criar pacotes e o banco de dados em que você
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 17/27
armazena, executa e gerencia;
Devido sua interface gráfica, é possível criar soluções sem escrever uma única linha
de código.
Assim como na maioria das ferramentas de ETL e integração, o SSIS oferece Suporte
para os principais sistemas de arquivos e SGBS, dados na nuvem, suporte para o HDFS
(sistema de arquivos do Hadoop), Conectores para SAP BW e muitos outros, atendendo,
de forma similar, dados estruturados, semiestruturados e não estruturados. 
 
Além de diversos conectores e ferramentas, o SSIS permite, nas transformações, a
utilização de funções em SQL e internas, expandindo as possibilidades como, por
exemplo, execução de funções de banco, ou tratamento de textos e outros mais. 
 
No SSIS, a construção do ETL segue uma estrutura desenhada em Pacotes (Package),
que possuem Tarefas (Task) que, por sua vez, têm o Fluxo de dados (Data Flow), uma
estrutura que contém os objetos com as fontes de dados, transformações e objetos de
destinos da carga. 
Figura 5 – Exemplo do fluxo e de dados no SSIS. 
Fonte: SSIS, 2020.
Na Figura 5, é possível ver a representação de um exemplo de fluxo de dados no SSIS,
que tem como objetivo capturar alterações nas fontes de dados e tratar em destinos
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 18/27
específicos. 
Vamos praticar 
Como sugestão de aprimoramento das possibilidades ligadas a soluções ETL,
é recomendado conhecer a solução da Amazon AWS Data Pipeline, serviço de
ETL na nuvem, que possibilita a movimentação e transformação de dados.
Acesse pelo link:< https://aws.amazon.com/pt/datapipeline/ >.
4.3 Apresentação da solução do projeto prático de
engenharia de dados 
Neste tópico, veremos uma solução prática de ETL utilizando o Talend Data Integration. 
 
No nosso mapeamento dos dados em alinhamento com o negócio, identificamos que
uma empresa, do ramo do varejo, possui os dados de produtos cadastrados em um
sistema de um terceiro, e os valores dos produtos disponibilizados pelos fornecedores à
parte. 
 
Dentre as questões levantadas pelos gestores, existe a necessidade de acompanhar os
preços de compras dos produtos e seus detalhes para futura análise em ferramenta de
apoio à decisão, o DW, comparando os custos em cada trimestre. 
 
Das estruturas disponibilizadas e necessárias para esse trabalho, descrevemos, na
Figura 6, o arquivo CSV, extraído do sistema de produto, e o arquivo XML,
disponibilizado pelos fornecedores com os preços. 
Figura 6 – Dados de produtos em CSV e dos preços em XML. 
Fonte: Elaborado pelo autor, 2020.
https://aws.amazon.com/pt/datapipeline/
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 19/27
Esses dados deverão ser extraídos, realizar algumas transformações, relacioná-los e, por
fim, inseri-los em uma tabela do banco de dados Oracle. Dessa forma, teremos um ETL
utilizando de dados estruturados e semiestruturados. 
 
No Oracle, banco de dados relacional, teremos uma tabela com a seguinte estrutura,
apresentada na Figura 7. 
Figura 7 – Tabela de destino do ETL. 
Fonte: Elaborado pelo autor, 2020.
4.3.1 Importando as fontes de dados para extração
A primeira etapa a realizar no Talend é realizar a configuração do metadados, que são as
estruturas onde serão definidos os arquivos e fontes de dados a serem utilizados nos
mapeamentos de ETL. 
 
Como trabalharemos com duas fontes de dados, temos que realizar a importação da
estrutura de um arquivo do tipo XML e do tipo CSV. 
A Figura 8 demonstra o passo a passo para importarmos a estrutura do arquivo XML:
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 20/27
Figura 8 – Importando o metadados do XML para o Talend. 
Fonte: Elaborado pelo autor, 2020.
Na Figura 8, primeiramente, pedimos para criar um metadados do tipo XML, e no passo
seguinte, atribuímosum nome da estrutura, no caso PrecosProduto. No passo seguinte,
devemos definir se o XML será utilizado como fonte de dados (Input) ou se será
Saída/Destino (Output), significando que será o alvo da carga. Na terceira etapa,
selecionamos o arquivo XML e a própria solução irá interpretar as marcações. Ao dar
Next, no quarto passo, devemos configurar o caminho e os atributos do XML, através das
marcações. Feito isso, os atributos são identificados na quinta etapa e atribuímos um
nome para o objeto, finalizando a configuração. 
 
Para configuração da fonte do tipo CSV, também é necessário configurar o File Delimited
no metadados, e utilizar o assistente que apoia na configuração da fonte.
4.3.2 Transformação e carga dos dados no banco de dados
Com as fontes de dados configuradas, chega o momento de criarmos uma
Job/Mapeamento para realizarmos o ETL, estabelecendo as fontes de dados para
extração, transformação e carga. 
Para criar o Job, é preciso ir à árvore de objetos no canto esquerdo da tela, expandir a
opção Job Designs e, então, clicar com o botão direito e selecionar Create Job . Nesse
instante, criaremos e daremos um nome para o Job. 
Na área de trabalho do Job, a primeira a coisa a ser realizada é trazer as fontes de
dados. Para isso, basta ir novamente em Metadados, clicar na fonte do XML e arrastar
para área de trabalho do Job criado, estabelecendo, como arquivo de entrada, o
tFileInputXML. Da mesma maneira, realizar com a fonte do arquivo CSV, mas escolhendo
o tFileInputDelimited. 
Após esse passo, na paleta de objetos selecionar o componente tMap , que permitirá
realizar a junção e transformação dos dados. O objeto tMap possibilita relacionarmos
conjuntos de dados, criarmos expressões, aplicar transformações e conduzir o resultado
para carga no objeto destino. 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 21/27
Antes de configurar o tMap, é necessário conectar as fontes com o tMap, criando fluxos
de dados que conectam ambas as fontes com o tMap. Na Figura 9, é possível ver a
conexão já realizada entre os Objetos e o tMap destacado em verde: 
Figura 9 – Fontes de dados configuradas com o TMap para Transformações e Objeto de destino. 
Fonte: Elaborado pelo autor, 2020.
Outra etapa que é necessária realizar antes de proceder com as transformações, é
estipular o objeto de destino, no caso, para a tabela TMP_PRODUTOPRECO. Para isso,
devemos utilizar do componente de Destino tOracleOutput, onde será configurado o
acesso ao banco Oracle, o tipo de carga, INSERÇÃO, ATUALIZAÇÃO e a definição da
tabela. Na Figura 9, foi possível ver o componente tDBOutput_1 representando esse
objeto no Job, em destaque de vermelho. É importante, também, criar um fluxo de dados
do tMap_1 para o objeto de destino de carga. 
 
Feito essa etapa, devemos clicar no tMap_1 e configurar o relacionamento entre as
fontes, já que nosso objetivo é associar esses dados e realizar algumas transformações.
Além disso, vamos fazer o mapeamento do resultado para o objeto de destino da carga,
o tDBOutput_1. 
 
Na Figura 10, estão representadas as configurações do tMap_1 que foram necessárias: 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 22/27
Figura 10 – Transformações dos Dados e mapeamento para o objeto de destino. 
Fonte: Elaborado pelo autor, 2020.
Analisando o mapeamento da Figura 10, observamos que a associação entre as fontes
do tipo CSV e XML é realizada através do atributo cod_produto. Isso é representado ao
lado esquerdo da figura. 
 
Já no mapeamento para o objeto de destino, nomeado de carga, mas com a estrutura da
tabela TMP_PRODUTOPRECO, podemos observar as seguintes transformações: 
Conversão do tipo de dado do cod_produto de uma das fontes que é do tipo inteiro
para o tipo BigDecimal. Esse é código em Java: 
new BigDecimal(Integer.toString(row2.cod_produto));
Transformação do valor do nome do produto para MAIÚSCULO, através do código
StringHandling.UPCASE(row2.nom_produto);
Conversão do tipo de dado do preço de uma das fontes, que é do tipo float, para o
tipo BigDecimal. Esse é código em Java: 
 new BigDecimal(Float.toString(row2.preco));
Observando mais o mapeamento, ainda na Figura 10, é possível verificar que é realizada
a associação dos atributos das fontes de dados para os atributos do objeto de saída,
identificando as origens e destinos dos dados. Basta verificar que todos os atributos de
saída possuem uma entrada equivalente. 
 
Na configuração do objeto de saída, foi configurado para ser uma carga do tipo
TRUNCATE/INSERT, ou seja, sempre apaga os dados e carrega com base nos dados
enviados. Essa ação pode ser vista na Figura 11 a seguir. 
Figura 11 – Configuração do objeto de destino para TRUNCATE/INSERT. 
Fonte: Elaborado pelo autor, 2020
Após todas essas configurações, podemos executar o Job e visualizar os dados
extraídos, transformados e carregados, ou seja, o ETL sendo executado. 
 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 23/27
Síntese
Caro(a) aluno(a), nessa unidade, vimos que a engenharia de dados apresenta um
conjunto de conceitos e práticas voltadas, principalmente, para a exploração e extração
de valor, identificados para o negócio. Esse valor, para ser alcançado, necessita de um
entendimento das questões levantadas e soluções que os gestores esperam encontrar
com o apoio dos dados. 
 
Outro ponto importante para utilização dos dados é ter o entendimento dos tipos e
formatos em que estes se encontram, pois isso vai interferir, diretamente, no esforço da
sua extração. Os dados estruturados são, normalmente, encontrados no formato de
tabelas, sendo uma tarefa mais simples sua consulta e manipulação. Entretanto, nos
casos de dados não estruturados, a inexistência de um formato definido exige soluções e
tipos de dados específicos a serem aplicados para o devido consumo. 
 
Vimos ainda que, para obtenção desses dados, utilizamos o conceito de ETL, processo
A Figura 12 demonstra a tabela de destino vazia, a execução do JOB e a tabela de
destino TMP_PRODUTOPRECO preenchida com os dados transformados e carregados. 
Figura 12 – Execução e resultado do ETL. 
Fonte: Elaborado pelo autor, 2020.
Essa foi uma demonstração apresentando apenas um exemplo dessa importante
atividade na engenharia de dados para construção de informação e conhecimento. Esse
processo poderia ser muito mais complexo, envolvendo grandes dados, inúmeras fontes
e estruturas, tanto relacionais, como em arquivos, nuvens, estruturadas ou não. São
muitas possibilidades quando trabalhamos com a movimentação e transformação de
dados. 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 24/27
que realiza a extração, transformação e carga. A extração captura os dados das fontes,
as transformações ajustam e manipulam de acordo as necessidades do negócio, e a
carga faz a inserção no repositório de destino.
Referências bibliográficas 
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 25/27
AMAZON. AWS Data Pipeline . Disponível em: <
https://aws.amazon.com/pt/datapipeline/ >. Acesso em: 26 ago. 2020. 
KIMBALL, Ralph; ROSS, Margy. The Data Warehouse Toolkit . New Jersey: John Wiley
& Sons, 2013. 
LAPLANTE, Alice; SHARMA, Ben. Architecting Data Lakes : Data management
architectures for advanced business use cases. 2. ed. Califórnia: O’Reilly Media, 2018. 
MACHADO, Felipe Nery Rodrigues. Tecnologia e Projeto de Data Warehouse : Uma
Visão Multidimensional. São Paulo: Editora Érica, 2004. 
MINELI,M.; CHAMBERS, M.; DHIRAJ, A. Big data, big analytics : emerging business
intelligence and analytic trends for today's businesses. New Jersey: John Wiley & Sons,
2013. 
SHARDA, Ramesh; DELEN, Dursun; TURBAN, Efraim. Business Intelligence e Análise
de Dados para gestão do negócio . 4. ed. São Paulo: Bookman Companhia Editora,
2019. 
SSIS. Referência oficial do Microsoft SQL Server Integration Service . Disponível
em: < https://docs.microsoft.com/pt-br/sql/integration-services/sql-server-integration-
services?view=sql-server-ver15 >. Acesso em: 25 ago. 2020. 
TALEND. Referência oficial do Talend Open Studio . Disponível em: <
https://help.talend.com/reader/9bBURCEt_t~lUHE3DeE2LA/qfCJtS8OWfsQUi7k0b_3aQ
>. Acesso em: 25 ago. 2020. 
VAZQUEZ, Carlos; SIMÕES, Guilherme. Engenharia de Requisitos : Software
Orientado ao Negócio. São Paulo: Brasport, 2016. 
VOHRA, Deepak. Practical Hadoop Ecosystem : A Definitive Guide to Hadoop-Related
Frameworks and Tools . 1. ed. Nova York: Apress, 2016.
https://aws.amazon.com/pt/datapipeline/
https://docs.microsoft.com/pt-br/sql/integration-services/sql-server-integration-services?view=sql-server-ver15
https://help.talend.com/reader/9bBURCEt_t~lUHE3DeE2LA/qfCJtS8OWfsQUi7k0b_3aQ
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 26/27
12/11/2022 12:50 Unidade 4 - Engenharia de Dados
https://student.ulife.com.br/ContentPlayer/Index?lc=NeYFgjIsmC21uEMYlNo%2bTA%3d%3d&l=%2b5sAQGbP8Ew3Ffe85SC%2bsg%3d%3d&… 27/27

Outros materiais