Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Pipeline de Dados_ 
Ricardo Brito Alves 
2023
 
2 
 
SUMÁRIO 
Capítulo 1. Por que um Pipeline de Dados? ........................................................... 7 
Inteligência Empresarial ou de Negócios ........................................................................ 7 
DIKW – Data Information Knowledge Wisdom .......................................................... 10 
Big Data e Analytics ................................................................................................................. 14 
Ferramentas usadas em Big Data e Data Analytics .................................................. 16 
Razões para usar o Big Data ................................................................................................ 17 
Os 7 V’s do Big Data ................................................................................................................. 18 
Transformação Digital pelo uso da Tecnologia ........................................................... 27 
Transformação Digital ............................................................................................................ 30 
O que é ser Data Driven? ....................................................................................................... 31 
Data Driven Decision Making – DDDM ............................................................................ 33 
Dados x Dataset x Databases .............................................................................................. 39 
Tipos de Datasets ..................................................................................................................... 41 
Conceitos de Pipeline de Dados ......................................................................................... 41 
Conceitos-Chave ....................................................................................................................... 43 
Passos na Criação de um Pipeline de Dados ................................................................ 44 
Componentes de um Pipeline de Dados ........................................................................ 45 
Elementos de um Pipeline de Dados ............................................................................... 46 
Importância de um Pipeline de Dados ............................................................................ 48 
Desafio de Pipelines de Dados ........................................................................................... 48 
Migração de dados .................................................................................................................... 48 
Auto Scaling de Processamento e Armazenamento de Dados ........................... 49 
Leituras e gravações otimizadas de dados no processo de pipeline ................ 50 
Capítulo 2. Processamento de Dados .................................................................... 52 
O que é Processamento de Dados? .................................................................................. 52 
Como os dados devem ser processados? ...................................................................... 54 
 
3 
 
Conceitos em Processamento de Dados ........................................................................ 55 
Modelos de Processamento de Dados ............................................................................ 57 
Ferramentas e Tecnologias de Processamento de Dados ..................................... 63 
Boas Práticas para Processamento de Dados ............................................................. 67 
Capítulo 3. Coleta de Dados ....................................................................................... 72 
Conceitos de Coleta de Dados ............................................................................................ 72 
Fontes de Dados ........................................................................................................................ 74 
Dados Abertos – Ciência ........................................................................................................ 76 
Projeto Genoma ......................................................................................................................... 76 
Kaggle ............................................................................................................................................. 76 
Dados Abertos – Governo ..................................................................................................... 77 
Dados Abertos – Sidra ............................................................................................................ 77 
Métodos de Coleta de Dados ............................................................................................... 78 
Importância de Métodos na Coleta de Dados ............................................................. 80 
Dados Primários e Secundários .......................................................................................... 82 
Características Dados Primários ........................................................................................ 86 
Características Dados Secundários .................................................................................. 87 
Coleta de Dados Coorporativa............................................................................................. 88 
Escolha das Ferramentas ...................................................................................................... 89 
Coleta x Ingestão de Dados ................................................................................................. 91 
Boas Práticas na Coleta de Dados ..................................................................................... 91 
Capítulo 4. Ingestão de Dados ................................................................................. 98 
Coleta ou Ingestão de Dados .............................................................................................. 98 
Ingestão de Dados ................................................................................................................... 99 
Ingestão de Dados X ETL .................................................................................................... 100 
Ingestão de Dados X Integração de Dados ................................................................ 100 
Tipos de Ingestão de Dados .............................................................................................. 101 
 
4 
 
CDC – Change Data Capture .............................................................................................. 103 
Ferramentas de Ingestão de Dados – Streaming.................................................... 105 
Benefícios da Ingestão de Dados .................................................................................... 108 
Boas Práticas na Ingestão de Dados ............................................................................. 108 
Práticas Recomendadas....................................................................................................... 109 
Capítulo 5. Extração de Dados ............................................................................... 112 
Extração de Dados x Ingestão de Dados ..................................................................... 112 
ETL ................................................................................................................................................. 113 
Extração ....................................................................................................................................... 114 
Conceitos-chave ...................................................................................................................... 117 
Crawling ....................................................................................................................................... 120 
Crawler– Características e Funções .............................................................................. 121 
Scrapping .................................................................................................................................... 123 
Web Scraping – Formas de se Fazer .............................................................................. 124 
Web Scraping – HTTP ........................................................................................................... 126 
WeB Scraping – Parsing ...................................................................................................... 127 
Web Scraping – JSON........................................................................................................... 129 
Web Scraping – API ............................................................................................................... 130 
Web Scraping – Ética ............................................................................................................ 132 
Capítulo 6. Transformação de Dados .................................................................. 136 
Conceitos de Transformação de Dados ........................................................................ 136 
Entender Formato de Dados .............................................................................................. 138 
Tipos de Dados ......................................................................................................................... 138 
Estrutura dos Dados .............................................................................................................. 140 
Limpeza e Organização dos Dados ................................................................................. 143 
Detecção de Fraudes Cartão de Crédito ....................................................................... 144 
Data Wrangling – Organizando Dados .......................................................................... 147 
 
5 
 
Capítulo 7. Soluções de ETL e ELT ....................................................................... 151 
ETL ................................................................................................................................................. 151 
ELT ................................................................................................................................................. 154 
Capítulo 8. Orquestração de Dados ..................................................................... 156 
Conceitos de Orquestração de Dados ........................................................................... 156 
Azure Data Factory ................................................................................................................. 159 
Google DataFlow ..................................................................................................................... 162 
Prefect .......................................................................................................................................... 167 
Containers .................................................................................................................................. 169 
KubeFlow .................................................................................................................................... 170 
Apache Airflow ......................................................................................................................... 173 
Capítulo 9. Orquestração de Dados ..................................................................... 179 
Instalação do Apache Airflow ........................................................................................... 179 
Programando Execuções de Pipeline ............................................................................ 196 
Condicionais .............................................................................................................................. 196 
Paralelismo................................................................................................................................. 197 
Integrações para Entregas ................................................................................................. 198 
Capítulo 10.Telemetria para Pipeline de Dados .............................................. 201 
Conceitos de Telemetria em Pipeline de Dados ....................................................... 201 
Coleta de Métricas – Prometheus ................................................................................... 203 
Passos para usar o Prometheus ....................................................................................... 205 
Dashboards – Grafana .......................................................................................................... 209 
Monitoramento de Pipelines.............................................................................................. 211 
Referências. ............................................................................................ .........................213 
 
 
 
1 
 
7 
 
Capítulo 1. Por que um Pipeline de Dados? 
Inteligência Empresarial ou de Negócios 
Business Intelligence (BI) é um processo orientado por tecnologia 
para analisar dados e fornecer informações acionáveis que ajudam 
executivos, gerentes e funcionários a tomar decisões de negócios 
informadas. Como parte do processo de BI, as organizações coletam dados 
de sistemas de TI internos e fontes externas, preparam-nos para análise, 
executam consultas nos dados e criam visualizações de dados, painéis de BI 
e relatórios para disponibilizar os resultados analíticos aos usuários de 
negócios para decisões operacionais, elaboração e planejamento 
estratégico. 
O objetivo final das iniciativas de BI é conduzir melhores decisões 
de negócios que permitam às organizações aumentarem a receita, melhorar 
a eficiência operacional e obter vantagens competitivas sobre os rivais de 
negócios. Para atingir esse objetivo, o BI incorpora uma combinação de 
análise, gerenciamento de dados e ferramentas de relatórios, além de várias 
metodologias para gerenciamento e análise de dados. 
Como funciona o processo de inteligência de negócios? 
Uma arquitetura de business intelligence inclui mais do que apenas 
software de BI. Os dados de inteligência de negócios geralmente são 
armazenados em um Data Warehouse criado para uma organização inteira 
ou em data marts menores que contêm subconjuntos de informações de 
negócios para departamentos e unidades de negócios individuais, 
geralmente vinculados a um Data Warehouse corporativo. Além disso, os 
Data Lakes baseados em clusters Hadoop ou outros sistemas de Big Data 
são cada vez mais usados como repositórios ou plataformas de aterrissagem 
para dados de BI e analíticos, especialmente para arquivos de log, dados de 
 
8 
 
sensores, texto e outros tipos de dados não estruturados ou 
semiestruturados. 
Os dados de BI podem incluir informações históricas e dados em 
tempo real coletados de sistemas de origem à medida que são gerados, 
permitindo que as ferramentas de BI suportem os processos de tomada de 
decisões estratégicas e táticas. Antes de serem usados em aplicativos de BI, 
os dados brutos de diferentes sistemas de origem geralmente devem ser 
integrados, consolidados e limpos usando integração de dados e 
ferramentas de gerenciamento de qualidade de dados para garantir que as 
equipes de BI e os usuários de negócios estejam analisando informações 
precisas e consistentes. A partir de então, as etapas do processo de BI 
incluem o seguinte: 
• Preparação de dados, na qual conjuntos de dados são 
organizados e modelados para análise. 
• Consulta analítica dos dados preparados. 
• Distribuição de indicadores-chave de desempenho (KPIs) e 
outras descobertas para usuários de negócios. 
• Uso da informação paraajudar a influenciar e conduzir 
decisões de negócios. 
Inicialmente, as ferramentas de BI eram usadas principalmente por 
profissionais de BI e TI que executavam consultas e produziam painéis e 
relatórios para usuários corporativos. Cada vez mais, no entanto, analistas 
de negócios, executivos e trabalhadores estão usando plataformas de 
inteligência de negócios, graças ao desenvolvimento de BI de 
autoatendimento e ferramentas de descoberta de dados. Os ambientes de 
inteligência de negócios de autoatendimento permitem que os usuários de 
negócios consultem dados de BI, criem visualizações de dados e criem 
painéis por conta própria. 
 
9 
 
Os programas de BI geralmente incorporam formas de análise 
avançada, como mineração de dados, análise preditiva, mineração de texto, 
análise estatística e análise de Big Data. Um exemplo comum é a modelagem 
preditiva que permite a análise hipotética de diferentes cenários de 
negócios. Na maioria dos casos, porém, os projetos de análise avançada são 
conduzidos por equipes separadas de cientistas de dados, estatísticos, 
modeladores preditivos e outros profissionais de análise qualificados, 
enquanto as equipes de BI supervisionam consultas e análises mais diretas 
de dados de negócios. 
Por que a inteligência de negócios é importante? 
No geral, o papel da inteligência de negócios é melhorar as 
operações de negócios de uma organização por meio do uso de dados 
relevantes. As empresas que empregam efetivamente ferramentas e 
técnicas de BI podem traduzir seus dados coletados em informações 
valiosas sobre seus processos e estratégias de negócios. Esses insights 
podem então ser usados para tomar melhores decisões de negócios que 
aumentam a produtividade e a receita, levando a um crescimento acelerado 
dos negócios e maiores lucros. 
Sem BI, as organizações não podem aproveitar prontamente a 
tomada de decisões baseada em dados. Em vez disso, os executivos e 
trabalhadores são deixados para basear decisões importantes de negócios 
em outros fatores, como conhecimento acumulado, experiências anteriores 
e intuição. Embora esses métodos possam resultar em boas decisões, eles 
também estão repletos de erros, erros devido à falta de dados que os 
sustentem. 
Normalmente, as organizações trazem dados de diferentes fontes 
de dados e bancos de dados para um Data Warehouse ou Data Lake usando 
o processo de extração, transformação e carga (ETL). As três partes do ETL 
envolvem: 
 
10 
 
• Extrair: replicar dados de sistemas de origem. 
• Transformar: padronize os dados replicados dos vários 
formatos usados em várias fontes de dados no modelo de 
dados comum usado pelo Data Warehouse de destino. 
• Carregar: encaminhe os dados recém-formatados para o Data 
Warehouse ou Data Lake de destino. 
Nos primeiros dias do ETL, quando os Data Warehouses tinham 
recursos limitados, a transformação dos dados antes que eles chegassem ao 
Data Warehouse permitia que as organizações limitassem o uso de recursos 
valiosos de armazenamento, computação e largura de banda em todo o fluxo 
de trabalho. 
Hoje, Data Warehouses e Data Lakes modernos de alta velocidade e 
baseados em nuvem podem armazenar volumes de dados praticamente 
ilimitados e oferecer poder de processamento escalável. Esses 
desenvolvimentos de tecnologia permitiram uma nova arquitetura de 
integração de dados chamada extrair, carregar, transformar (ELT), na qual os 
dados são carregados imediatamente no Data Warehouse ou Data Lake após 
a extração e transformados somente quando os usuários estão prontos para 
empregar os dados para análise. 
DIKW – Data Information Knowledge Wisdom 
O DIKW diz respeito à pirâmide do conhecimento, utilizado 
principalmente para ações de Inteligência de Dados, por meio de uma 
hierarquização das estruturas de informação, utilizado tanto nas Ciências da 
Informação como na Gestão do Conhecimento. 
Como é composto o DIKW? 
O DIKW tem uma composição hierárquica segundo o seu acrônimo, 
na seguinte forma: 
 
11 
 
• Data (dados). 
• Information (informação). 
• Knowledge (conhecimento). 
• Wisdom (sabedoria). 
 
 
12 
 
Figura 1 – Pirâmide DIKW. 
 
Fonte: Wikimedia Commons. 
A base da pirâmide são os dados. Esse é o ponto inicial para começar 
o processo. A partir dele, é possível obter os demais pontos, fundamentais 
para prosseguir na gestão de conhecimento da empresa. Lembramos que 
dados sozinhos não geram conhecimento. É a partir da sua relação com 
outras questões (como outros dados e contextos) que pode avançar nessas 
questões. 
A partir dos dados é possível gerar informações, ou seja, quando se 
junta esses fragmentos iniciais (dados), acrescentando sentido e totalidade 
a eles. Por meio disso, gera-se uma descrição ou perspectiva de um contexto. 
Assim, é possível ter uma compreensão mais abrangente da situação. 
O uso adequado das informações gera o conhecimento, ou seja, 
passa-se para a compreensão daquilo que está sendo apresentado. Por fim, 
a sabedoria diz respeito a como trabalhar o uso dessas informações na 
empresa, segundo o contexto interno. 
Como o DIKW é utilizado na prática? 
O DIKW é utilizado na prática como uma forma de gerar uma espécie 
de “higienização dos dados” e suas respectivas interpretações. Assim, 
analisar a pirâmide de conhecimento permite hierarquizar quais são os 
dados que, de fato, podem conduzir a sabedoria no futuro, permitindo ações 
 
13 
 
mais estratégias e mais bem embasadas, bem como garantir maior 
conhecimento para os gestores sobre o negócio. 
Por exemplo, um volume de R$ 20 mil em vendas naquele dia é um 
dado. Sozinho, ele não diz nada além de um fato objetivo. Contudo, ao 
analisar a variação no volume de vendas ao longo de uma semana, é possível 
avaliar se ocorreu aumento ou diminuição, ou seja, cria-se informação. 
Ao pensar em como isso pode representar cenários positivos ou, 
então, situações de crise (se, por exemplo, esse valor é uma redução 
significativa no padrão da empresa), há o conhecimento sobre a situação. A 
partir do diagnóstico do cenário e da possibilidade de criar um plano de ação 
para esse fim é que temos a sabedoria sendo implementada. 
Diante disso, podemos compreender como o DIKW pode ser 
utilizado de forma estratégica nas empresas. Afinal, é possível compreender 
quais conjuntos de dados podem ser analisados a fim de priorizar o que deve 
ser coletado e, principalmente, tratado. Nem todo conjunto de dados vai, 
necessariamente, conduzir à informação. Da mesma forma, não são todas as 
informações que geram conhecimento de fato. 
Você pode perceber, portanto, que o DIKW é utilizado 
essencialmente para as decisões. Por isso, ele tem uma função estratégica 
para os negócios, pois fornece conhecimentos essenciais para o 
crescimento da organização, bem como indicar o melhor momento para agir 
em determinadas circunstâncias. 
Diante de tudo que listamos é possível perceber que o DIKW é um 
dos principais aliados de uma Ciência de Dados bem-aplicada no ambiente 
organizacional. 
 
 
14 
 
Figura 2 – DIKW. 
 
Fonte: Wikimedia Commons. 
Big Data e Analytics 
Acredita-se que as empresas estejam priorizando Big Data e análise 
de dados em sua agenda corporativa. Juntos, ambos prometem transformar 
o negócio em um empreendimento lucrativo. Eles estão automatizando 
processos e induzindo inovação e eficiência na organização. 
Especialistas definem Big Data como um fenômeno com os três V’s 
– Variedade, Volume e Velocidade. Big Data é simplesmente dados maiores, 
complexos e volumosos. Esses conjuntos de dados são gerados com grande 
velocidade em uma organização de negócios e em grande volume, 
dificultando o uso de segregação de dados tradicional e técnicas analíticas 
para extrair insights deles. 
As empresas usam técnicas modernas de Ciência de Dados, como 
Inteligência Artificial, Aprendizado de Máquina e Aprendizado Profundo, 
para lidar com oBig Data que uma empresa gera regularmente. O uso de 
métodos científicos torna a extração e segregação de dados eficaz e livre de 
erros. A análise de dados é um processo científico que usa fórmulas 
matemáticas e métodos científicos para extrair insights de dados coletados 
 
15 
 
por aplicativos de Ciência de Dados advindos dessas técnicas modernas. As 
empresas podem usar insights derivados da análise de dados para 
impulsionar mudanças e inovações. Curiosamente, esses insights também 
podem ajudar a afirmar indicadores-chave de desempenho (KPI) ou métricas 
para avaliar o desempenho da empresa e seus produtos ou serviços. 
Portanto, nesta Era Digital, uma quantidade insignificante de 
empresas de negócios não tem conhecimento e é desprovida de Big Data e 
análises. Portanto, vamos traçar uma clara diferença entre Big Data e análise 
de dados para simplificar o processo de entender esses dois conceitos e 
implementá-los nos negócios. Mas antes disso, vejamos a aplicação de Big 
Data e análise de dados. 
Figura 3 – Businnes Intelligence x Business Analytics. 
 
Fonte: Gartner Group. 
Qual é a diferença entre Big Data e análise de dados? 
Ferramentas usadas em Big Data vs Data Analytics 
Como Big Data é um processo mais abrangente e extenso, suas 
ferramentas são complexas e sofisticadas. Ferramentas como ferramentas 
de automação e computação paralela são usadas para converter dados não 
estruturados em conjuntos de dados significativos. 
 
16 
 
Enquanto isso, ferramentas simples, como modelagem estatística e 
modelagem preditiva, são usadas na análise de dados. Além disso, muitas 
fórmulas estatísticas e matemáticas são usadas ao analisar e interpretar 
dados. 
Tipos de indústrias que usam Big Data e análise de dados 
Muitas indústrias estão acomodando processos científicos 
modernos, como ciência de dados, Big Data e análise de dados para 
estimular o crescimento e a inovação. Setores de serviços como turismo, 
saúde e tecnologia da informação (TI) usam a análise de dados para 
transformar e melhorar sua administração. Por exemplo, os hospitais usam 
análises para trazer eficiência às suas funções administrativas, como 
gerenciamento de pacientes, tratamento e gerenciamento de equipamentos 
etc. 
No entanto, Big Data é usado em setores bancários, de varejo e 
similares, que se comunicam diretamente com dados. As indústrias 
orientadas para o cliente usam Big Data principalmente porque a tecnologia 
moderna instila um processo sistemático de rastreamento da demanda e 
dos requisitos do cliente e ajuda a descobrir padrões muitas vezes 
negligenciados. 
Tipo de dados em Big Data vs Data Analytics 
Em Big Data, encontramos dados não estruturados e brutos. O 
principal objetivo do Big Data é converter os dados brutos em conjuntos de 
dados significativos, que podem ser usados para obter insights 
significativos ou resolver problemas de negócios complexos. 
Enquanto isso, a análise de dados é principalmente dados 
estruturados. Ele analisa os dados estruturados para responder a consultas 
de negócios complexas, encontrar soluções para desafios de negócios etc. 
Ferramentas usadas em Big Data e Data Analytics 
 
17 
 
O Data Analytics é totalmente tratado com programação R, 
codificação Python, Tableau, Rapid Miner, MS Excel e Google Fusion Tables. 
Big Data é algo que lida com Hadoop, Hive, HBase, Spark e Scala. Um 
conhecimento básico de Java é sempre necessário para a programação 
MapReduce, clustering e conectores do Tableau-Hadoop. 
O Data Analytics pode ser usado em vários segmentos de mercado. 
Os bancos usam essa estratégia para evitar possíveis fraudes. Na educação, 
você pode medir o progresso dos alunos e avaliar a eficácia do sistema. No 
varejo, o principal uso é rastrear as características sociais e 
comportamentais dos clientes, de modo a prever tendências e hábitos. 
Geralmente, o processo de análise do fluxo de dados segue as 
seguintes etapas: 
• Coleta. 
• Ingestão e transformação. 
• Armazenamento. 
• Análise. 
• Desenvolvimento de algoritmos. 
• Visualização. 
É importante avaliar quais são os principais insights desejados na 
etapa de visualização, ou até mesmo o levantamento de quais problemas de 
negócio você gostaria de resolver. 
Razões para usar o Big Data 
• Entender padrões. 
• Prever situações. 
• Criar fronteiras. 
 
18 
 
• Informar coleções de dados. 
• Estimar parâmetros escondidos. 
• Calibrar. 
O Big Data traz novos desafios na gestão de dados, como a 
manutenção de uma linearidade dos dados, sua integridade e qualidade, a 
fim de que eles possam ser transformados em informação útil. 
Soluções de Inteligência Operacional podem correlacionar e analisar 
dados de fontes variadas em várias latências (desde o batch até o tempo 
real), para revelar informações importantes. 
Os 7 V’s do Big Data 
“O objetivo é transformar dados em informações e informações em 
insights.” – Por Carly Fiorina, ex-CEO da Hewlett-Packard. 
Big Data é um campo relativamente moderno da Ciência de Dados 
que geralmente explora grandes conjuntos de dados. Esses conjuntos de 
dados são complexos para processamento por métodos tradicionais. 
Portanto, grandes conjuntos de dados são divididos em conjuntos menores 
para análise posterior. A análise profunda é feita para obter insights e 
informações desses dados. 
Antigamente eram utilizadas soluções convencionais de 
processamento de dados. Essas soluções não eram muito eficientes na 
captura, armazenamento e análise de Big Data. Assim, as empresas que 
utilizam soluções tradicionais de BI não são capazes de maximizar 
totalmente o valor delas. Hoje estamos usando Big Data para ele, o que é 
muito melhor do que as formas tradicionais de manipulação de dados. 
Agora, para entender com sucesso como o Big Data trata e mantém 
os dados, precisamos entender os 7 V's do Big Data. 
 
19 
 
No ano de 2001, o MetaGroup (agora conhecido como Gartner), que 
é uma empresa de análise, apresentou cientistas e analistas de dados aos 
3V’s de dados. Os 3 V’s são: Volume, Velocidade e Variedade, mas ao longo 
de um período, a análise de dados viu uma mudança na forma como os dados 
eram capturados e processados. A observação inclui que os dados estavam 
crescendo tão rapidamente em tamanho, que mais tarde esses dados 
passaram a ser conhecidos como Big Data. 
Desta forma, com o crescimento astronômico dos dados, dois novos 
V’s foram adicionados: Valor e Veracidade. Esses 2 V’s foram adicionados 
pelo Gartner aos conceitos de processamento de dados. Hoje temos os 7V’s. 
Figura 4 – 7 V’s Big Data 
 
Fonte: https://impact.com/marketing-intelligence/7-vs-big-data. 
1. Volume 
O volume de Big Data pode ser definido como a quantidade de dados 
que é produzida. O volume de dados produzidos também depende do 
tamanho dos dados. 
No mundo tecnológico atual os dados são gerados a partir de várias 
fontes e diferentes formatos. Os formatos de dados estão na forma da 
palavra, documentos excel, PDFs, conteúdo de mídia – como imagens, vídeos 
etc. – e são produzidos em grande ritmo. 
https://impact.com/marketing-intelligence/7-vs-big-data
 
20 
 
Está se tornando um desafio para as empresas armazenarem e 
processar dados usando os métodos convencionais de inteligência e análise 
de negócios. As empresas precisam implementar ferramentas modernas de 
inteligência de negócios para capturar, armazenar e processar de forma 
eficaz essas enormes quantidades de dados na vida real. 
 
 
21 
 
Alguns fatos interessantes: 
• Hoje, existem cerca de 2,7 Zettabytes de dados no mundo 
digital. 
• O Walmart lida com mais de 1 milhão de transações de 
clientes a cada hora, que são importadas para bancos de 
dados estimados em aproximadamente 2,5 petabytes de 
dados. 
2. Valor 
Hoje os dados estão sendo produzidos em grandes volumes e 
apenas coletar os dados produzidos não adianta. Em vez disso, temos que 
procurar dadosa partir dos quais possam ser gerados insights de negócios 
que agreguem “valor” à empresa. Então podemos dizer que o Valor é o V mais 
importante de todos os 5 V's. 
É aqui que a análise de Big Data entra em cena. Existem empresas 
que investiram no estabelecimento de dados e infraestrutura de 
armazenamento de dados, mas não entendem que a agregação de dados 
não significa agregação de valor. O que você faz com esses dados coletados 
é o que realmente importa. A análise de dados ajuda a obter informações 
úteis a partir dos dados coletados. Esses insights, por sua vez, agregam valor 
ao processo de tomada de decisão. 
Agora, como ter certeza de que o valor do Big Data é considerável e 
vale a pena investir tempo e esforço? Isso pode ser feito através da 
realização de uma análise de custo versus benefício. Ao calcular o custo total 
de processamento de Big Data e compará-lo com o ROI, espera-se que os 
insights de negócios sejam gerados. O uso dessas empresas pode decidir 
efetivamente se a análise de Big Data agrega algum valor aos seus negócios 
ou não. 
 
22 
 
Alguns fatos interessantes: 
• O Facebook armazena, acessa e analisa cerca de 30 petabytes 
de dados gerados pelo usuário. 
• De acordo com a McKinsey, um varejista pode aumentar sua 
margem operacional em mais de 60% ao usar o Big Data em 
todo o seu potencial. 
3. Velocidade 
A velocidade pode ser denominada como a velocidade com que os 
dados são gerados, coletados e analisados. Hoje, os dados fluem 
continuamente por vários canais, como sistemas de computador, redes, 
mídias sociais, telefones celulares etc., e no ambiente de negócios atual 
orientado a dados, o ritmo em que os dados crescem pode ser descrito como 
“torrencial” e “sem precedentes”. 
Agora, esses dados precisam ser capturados o mais próximo possível 
do tempo real, para que os dados certos possam estar disponíveis no 
momento certo. 
Para tomar decisões de negócios oportunas e precisas, a velocidade 
com que os dados podem ser acessados é o que mais importa. Uma 
quantidade limitada de dados que está disponível em tempo real pode gerar 
resultados de negócios melhores. Esses resultados são ainda melhores do 
que um grande volume de dados que precisa de muito tempo para capturar 
e analisar. 
Hoje, existem várias tecnologias de Big Data que nos permitem 
capturar e analisar os dados à medida que são gerados em tempo real. 
“Estamos caminhando lentamente para uma era em que Big Data é 
o ponto de partida, não o fim.” – Por Pearl Zhu, Mestre Digital. 
 
23 
 
4. Variedade 
O volume e a velocidade dos dados agregam valor a uma organização 
ou negócio, mas os diversos tipos de dados coletados de diversas fontes de 
dados também são um fator importante do Big Data. O Big Data é 
geralmente classificado como dados estruturados, semiestruturados ou não 
estruturados. 
 
 
24 
 
• Dados estruturados: 
Dados estruturados são aqueles cujo formato, comprimento e 
volume são claramente definidos. 
• Dados semiestruturados: 
Dados semiestruturados são aqueles que podem estar parcialmente 
em conformidade com um formato de dados específico. 
• Dados não estruturados: 
Dados não estruturados são dados não organizados que não estão 
em conformidade com os formatos de dados tradicionais. Dados gerados por 
meio de mídias digitais e sociais, como imagens, vídeos etc., são dados não 
estruturados. 
Cerca de 80% dos dados produzidos globalmente, incluindo vídeos, 
fotos, dados móveis, conteúdo de mídia social, são de natureza não 
estruturada. 
Alguns fatos interessantes: 
• 94% dos usuários do Hadoop realizam análises em grandes 
volumes de dados, 88% analisam dados com mais detalhes, 
enquanto 82% agora podem reter mais dados. 
• Decodificar o genoma humano originalmente levou 10 anos 
para ser processado, mas agora com a ajuda do Big Data pode 
ser alcançado em uma semana. 
• Um aumento de 10% na acessibilidade de dados por uma 
empresa da Fortune 1000 daria a essa empresa 
aproximadamente US$ 65 milhões a mais em receita líquida 
anual. 
 
25 
 
 
 
26 
 
5. Validade / Veracidade 
A Validade e Veracidade do Big Data pode ser descrita como a 
garantia da qualidade ou credibilidade dos dados coletados. Como o Big Data 
é vasto e envolve tantas fontes de dados, é possível que nem todos os dados 
coletados sejam precisos e de boa qualidade. 
Portanto, ao processar grandes conjuntos de dados é importante 
verificar a validade dos dados antes de prosseguir com análises adicionais. 
Perguntas como: Você pode confiar nos dados que coletou? Os 
dados são confiáveis o suficiente? etc., precisam ser entretidos. Portanto, 
antes de processar os dados para análise posterior, é importante verificar a 
validade dos dados. 
Alguns fatos interessantes: 
• Mais de 5 bilhões de pessoas estão ligando, enviando 
mensagens de texto, navegando e twittando em telefones 
celulares em todo o mundo. 
• Dados ruins ou dados de baixa qualidade custam às 
organizações de 10 a 20% de sua receita. 
• Dados ruins entre empresas e o governo custam à economia 
dos EUA US$ 3,1 trilhões por ano. 
6. Variabilidade 
Variabilidade é diferente de variedade. Uma cafeteria pode oferecer 
seis blends diferentes de café, mas se você recebe a mesma mistura todos 
os dias e tem um sabor diferente todos os dias, isso é variabilidade. O mesmo 
acontece com os dados. Se o significado muda constantemente, isso pode 
afetar significativamente a homogeneização dos dados. 
 
 
27 
 
7. Visualização 
A visualização é fundamental no mundo de hoje. Usar tabelas e 
gráficos para visualizar grandes quantidades de dados complexos é muito 
mais eficaz para transmitir significado do que planilhas e relatórios repletos 
de números e fórmulas. 
Transformação Digital pelo uso da Tecnologia 
A transformação digital não se aplica apenas a empresas ou 
varejistas, mas também a saúde, bancos, educação, instituições de caridade, 
serviços financeiros e muito mais. A transformação digital refere-se ao 
processo de adoção e integração de tecnologias digitais em todos os 
aspectos de uma organização, o que pode incluir suas operações, processos 
de negócios, modelos de negócios e interações com clientes e 
colaboradores. 
A transformação digital envolve a aplicação de tecnologias como 
Inteligência Artificial, Análise de Dados, Computação em Nuvem, Internet 
das Coisas (IoT), automação de processos, realidade virtual e aumentada, 
entre outras, para melhorar a eficiência, a produtividade e a experiência do 
cliente. 
Os projetos e iniciativas de transformação digital podem ser 
divididos em quatro categorias: 
1. Revolucione a cultura da sua empresa 
A primeira coisa a entender é que a transformação digital não é 
apenas sobre tecnologia. Trata-se de toda a atitude e ética da organização 
voltada para o digital. 
Você pode ter todos os gadgets mais sofisticados, a tecnologia mais 
poderosa e as inovações mais recentes do mundo, mas isso não significará 
nada se as pessoas em sua organização ainda tiverem uma maneira de 
pensar antiquada. 
 
28 
 
Os serviços gerenciados em nuvem não podem ser gerenciados sem 
uma nova perspectiva que leve a tecnologia em consideração em tudo o que 
faz, e o headless commerce não levará a lugar nenhum se os funcionários 
não mudarem sua mentalidade para incorporar recursos digitais em seus 
processos de trabalho diários. 
Então, como você introduz uma abordagem que prioriza a tecnologia 
nas mentes e comportamentos de sua empresa? Pode ser complicado para 
corporações grandes e estabelecidas que têm muitos departamentos 
isolados, centenas de funcionários e anos de experiência arraigada fazendo 
as coisas à moda antiga. Isso é parte do motivo pelo qual a transformação 
digital às vezes é mais fácil para startups e pequenas e médias empresas 
(PMEs). 
Assim como as mudanças de estilo de vida ecologicamente corretas, 
a transformação digital não podeser imposta de cima para baixo. Enviar e-
mails ameaçadores para toda a força de trabalho para “pensar no digital ou 
então” não funcionará. Em vez disso, a melhor maneira de marcas e 
empresas promoverem o pensamento digital em seus funcionários é 
começar primeiro com um dos outros tipos de transformação digital. 
Portanto, não é necessário começar transformando a cultura da 
empresa para ser mais digital, nem é necessariamente o ponto final. Em vez 
disso, anda de mãos dadas com os outros tipos de transformação digital. 
Engana-se quem diz que a transformação digital não tem nada a ver com 
tecnologia, porque o resto dos itens da nossa lista estão firmemente 
ancorados em inovações tecnológicas. 
2. Aproveite a Internet das Coisas 
A Internet das Coisas (IoT) é a totalidade de objetos físicos 
conectados sem fio à Internet. Os exemplos podem incluir, entre outras 
coisas, dispositivos móveis de smartphone, alto-falantes de voz inteligentes, 
 
29 
 
leitores de código de barras em lojas, cartões de fidelidade e chaves de 
armários conectados à rede mundial de computadores. 
Adotar a Internet das Coisas é uma excelente maneira de a 
transformação digital transformar o seu negócio. 
Esse tipo de transformação digital é firmemente centrado no cliente 
e projetado para impulsionar a experiência do cliente (CX). Mas a IoT não 
precisa se limitar apenas a impactar os clientes, também pode ser usado 
pelos trabalhadores para tornar seus processos de trabalho mais ágeis. 
3. Substitua sua TI monolítica herdada por uma nova tecnologia 
Se o tipo anterior de transformação digital era principalmente 
centrado no cliente, ou pelo menos baseado na alteração dos processos da 
empresa e do comportamento das pessoas, este é decididamente centrado 
na tecnologia. Na verdade, quando a maioria dos CEOs e CIOs fala sobre 
transformação digital, eles normalmente estão pensando nisso. 
Muitas grandes empresas têm sistemas de TI antigos que usam há 
anos ou décadas. Essas grandes máquinas gigantescas são construídas em 
um modelo multifuncional desatualizado da época em que pensávamos que 
era melhor para uma empresa ter toda a sua tecnologia reunida em uma sala 
de servidores com um piso pesado. 
Atualmente, a maioria das iniciativas de transformação digital se 
concentra na migração dos serviços de uma empresa de um desses 
monólitos para uma tecnologia mais nova e ágil. Isso pode ser feito de uma 
só vez ou um pouco de cada vez. As empresas menores e mais novas não 
têm tantos sistemas de TI antiquados para substituir, o que é outro motivo 
pelo qual a transformação digital é mais fácil para as startups. 
Existem quatro inovações tecnológicas que são melhores para as 
empresas instalarem para a transformação digital: 
 
30 
 
• Serviços gerenciados em nuvem. 
• Headless commerce. 
• Microsserviços. 
• Application Programming Interface (API). 
4. Mude seu modelo de negócios 
Você pode transformar seu negócio para competir no ambiente 
digital moderno, alterando o modelo de negócios. Podemos ver exemplos 
disso na maneira como a Netflix passou os primeiros 10 anos de sua vida 
enviando DVDs para clientes pelo correio antes de reimaginar o que a mídia 
poderia ser com seu serviço de streaming. 
A Amazon é outro exemplo de empresa que se expandiu para um 
mercado totalmente novo, de mercado de comércio a serviços da Web 
gerenciados em nuvem, com o lançamento da AWS. Este foi um exemplo de 
transformação digital no atacado, com a empresa mudando completamente 
para uma nova esfera digital e não apenas fazendo as mesmas coisas de 
sempre, mas de uma forma mais digital. 
Transformação Digital 
A transformação digital é um termo amplo que pode significar coisas 
diferentes para diferentes tipos de negócios. Mas, em sua essência, a 
transformação digital refere-se a uma mudança drástica na forma como uma 
empresa opera e fornece informações vitais. O Enterprisers Project – um 
esforço conjunto entre a Harvard Business Review e a empresa de software 
Red Hat, que se concentra em ajudar os líderes de TI no mundo dos negócios 
– define a transformação digital como “a integração da tecnologia digital em 
todas as áreas de um negócio, mudando fundamentalmente a forma como 
você opera e entregar valor aos clientes. É também uma mudança cultural 
 
31 
 
que exige que as organizações desafiem continuamente o status quo, 
experimentem e se sintam confortáveis com o fracasso”. 
Tesla 
A empresa de carros elétricos e energia limpa, Tesla, ajudou a 
desencadear a transformação digital ao disponibilizar ao público todas as 
suas patentes de veículos elétricos. O Board of Innovation, uma empresa de 
design de negócios e estratégia de inovação que auxilia grandes 
organizações com mudanças fundamentais, explica que a Tesla tornou 
essas informações públicas por dois motivos: “para acelerar o mercado e 
para tornar sua tecnologia o padrão. Ford (elétrica), BMW (elétrica) e Toyota 
(hidrogênio) seguiram seu exemplo.” 
Microsoft 
A Microsoft iniciou sua transformação digital quando o CEO Satya 
Nadella assumiu em 2014. Um artigo recente da Forbes descreve o maior 
sucesso da empresa, escrevendo, “a empresa começou uma mudança para 
seus sistemas de rede em nuvem. Ele mudou o foco do software tradicional 
para um sistema de nuvem mais fluido para uso pessoal e empresarial. Em 
vez de evitar parcerias como no passado, a Microsoft mudou de rumo para 
construir relacionamentos com outras empresas de software e tecnologia. A 
visão pública também mudou, pois, a Microsoft deixou de ser vista como uma 
empresa desatualizada ou estagnada para uma solução de nuvem com visão 
de futuro. À medida que se comprova com mais negócios e crescimento, a 
estrela da Microsoft continua a crescer”. A Forbes constatou que os preços 
das ações e a receita da Microsoft dispararam após sua transformação 
digital: “No início de 2014, pouco antes do início da transformação da 
Microsoft, as ações estavam sendo vendidas em torno de US$ 38 por ação. 
Hoje, eles valem cerca de US$ 136. 
O que é ser Data Driven? 
Qual é o significado de Data-driven? 
 
32 
 
• Data Driven é um conceito estratégico que pode ser aplicado 
a qualquer negócio. 
• Na prática, significa tomar decisões baseada em análise e 
interpretação de dados. 
• Em tradução livre, podemos dizer que é a gestão orientada por 
dados. 
Em uma cultura orientada a dados, podemos evidenciar as seguintes 
características: 
Coleta de Dados: ser data-driven começa com a coleta adequada de 
dados relevantes. Isso pode envolver a utilização de sistemas de coleta de 
dados, como formulários online, ferramentas de rastreamento, sensores ou 
integração de dados de diferentes fontes. 
Análise de Dados: os dados coletados são analisados para identificar 
padrões, tendências e relações significativas. Isso pode ser feito por meio 
de técnicas estatísticas, algoritmos de aprendizado de máquina, 
visualização de dados e outras ferramentas analíticas. 
Tomada de decisão embasada em dados: os insights derivados da 
análise dos dados são utilizados para informar e embasar as decisões. As 
decisões são baseadas em fatos e evidências, permitindo uma abordagem 
mais objetiva e precisa. 
Monitoramento contínuo: ser data-driven implica em um processo 
contínuo de coleta, análise e interpretação dos dados. Os resultados das 
ações tomadas são monitorados e avaliados para verificar se estão alinhados 
com os objetivos desejados e, se necessário, ajustes podem ser feitos com 
base nas conclusões extraídas dos dados. 
 
33 
 
Cultura e mentalidade: ser data-driven requer uma cultura 
organizacional e uma mentalidade que valorizem a utilização de dados e 
análises para embasar as decisões. Isso envolve promover a alfabetização 
em dados, incentivar a coleta e compartilhamento de dados relevantes e 
desenvolver habilidades analíticas entre os membros da equipe. 
Data Driven Decision Making– DDDM 
A tomada de decisões embasadas em dados é o processo de coletar 
dados de acordo com os indicadores-chave de desempenho (KPIs) da sua 
empresa, e de transformar tais dados em percepções que podem ser 
colocadas em prática. Esse processo é um componente essencial das 
estratégias de negócios modernas. 
Você pode usar ferramentas de relatórios de inteligência 
empresarial neste processo, pois tornam a coleta de Big Data rápida e 
proveitosa. Tais ferramentas simplificam a visualização de dados e permitem 
que pessoas sem conhecimentos técnicos avançados possam analisá-los. 
A tomada de decisões embasadas em dados é importante porque 
nos ajuda a fazer escolhas considerando fatos e com imparcialidade. Se você 
exerce liderança no trabalho, tomar decisões objetivas é a melhor forma de 
manter a justeza e o equilíbrio. 
As decisões mais bem fundamentadas apoiam-se em dados que 
mensuram metas empresariais e se atualizam em tempo real. Você pode 
reunir os dados necessários para identificar padrões e fazer previsões com 
softwares que geram relatórios. 
Algumas decisões que podem ser amparadas por dados: 
• Como impulsionar os lucros e as vendas. 
• Como definir boas práticas de gestão. 
 
34 
 
• Como otimizar operações. 
• Como melhorar o desempenho da equipe. 
Nem todas as escolhas poderão ser fundamentadas em dados, mas 
a maioria das decisões importantes pode sim. 
 
 
35 
 
Cinco passos para tomar decisões embasadas em dados 
É necessário ter prática para tomar decisões embasadas em dados. 
Se você deseja aprimorar as suas habilidades de liderança, terá de saber 
como transformar dados brutos em ações práticas que beneficiem as 
iniciativas da sua empresa. Os passos abaixo podem ajudar a fazer escolhas 
melhores durante a análise de dados. 
1. Entenda qual é a sua visão. 
Antes de tomar decisões bem fundamentadas, você precisa saber 
qual é a visão de futuro da sua empresa. Isso ajuda a combinar dados e 
estratégia para amparar as suas escolhas. Gráficos e números não 
significam muita coisa sem um contexto que lhe dê perspectiva. 
2. Encontre fontes de dados. 
As ferramentas e fontes de dados usadas dependerão do tipo dos 
dados que você deseja coletar. Se o objetivo é analisar conjuntos de dados 
relativos aos processos internos da empresa, use uma ferramenta de 
geração de relatórios globais. As ferramentas de relatórios servem como 
ponto de referência central para monitorar o progresso do trabalho em toda 
a sua organização. Certas ferramentas, como o Power BI da Microsoft, 
permitem coletar dados de diversas fontes externas. Se você deseja analisar 
tendências de marketing ou métricas de concorrentes, tais ferramentas 
podem ser úteis. 
Algumas das métricas gerais de sucesso que você pode mensurar 
são: 
Margem bruta de lucro: a margem bruta de lucro é medida pela 
subtração entre os custos dos bens vendidos e o valor líquido de vendas da 
empresa. 
 
36 
 
Retorno sobre o investimento: é a razão entre a receita e o 
investimento. O retorno sobre o investimento (ROI, na sigla inglesa) é 
geralmente usado para decidir se uma iniciativa deve receber ou não 
investimento de tempo e recursos. Quando usada como métrica de negócio, 
ela frequentemente monitora o desempenho de um investimento. 
Produtividade: esta é a medida da eficiência da empresa na 
produção de bens ou serviços. É possível calculá-la dividindo o total da 
produção pelo total dos custos. 
Número total de clientes: é uma métrica eficaz e simples de 
acompanhar. Quanto mais clientes pagos, maiores serão as receitas do 
negócio. 
Receita recorrente: geralmente usada pelas empresas que usam o 
modelo de negócios de software como um serviço (SaaS), ela representa o 
montante de receita gerada por todos os assinantes ativos durante um 
período, geralmente um mês ou um ano. 
É possível mensurar diversos outros conjuntos de dados, 
dependendo do seu cargo e da visão da empresa. Com o aprendizado de 
máquina, nunca foi tão fácil agregar dados em tempo real. 
3. Organize os dados. 
Para tomar decisões de negócios eficazes, é essencial organizar os 
dados de forma a aprimorar a sua visualização. Se você não conseguir 
examinar os dados relevantes num só lugar e compreender suas 
interconexões, será mais difícil assegurar que as decisões estejam bem 
fundamentadas. 
4. Analise os dados. 
 
37 
 
Depois de organizar os dados, você poderá iniciar uma análise 
embasada. É neste momento que as percepções práticas serão extraídas dos 
dados para ajudar no processo de tomada de decisões. 
Dependendo das suas metas, talvez você prefira analisar os dados 
no painel executivo em conjunto com pesquisas de usuários, tais como 
estudos de caso, questionários ou depoimentos, para que as conclusões 
levem em conta a experiência do cliente. 
 
 
38 
 
A sua equipe deseja aprimorar as ferramentas de SEO para aumentar 
a competitividade em relação a outras alternativas no mercado? Então 
considere estes conjuntos de dados: 
• Dados do desempenho dos concorrentes. 
• Dados desempenho de atuais do software de SEO. 
• Dados atuais da satisfação dos clientes. 
• Pesquisas de usuários sobre diversas ferramentas de SEO e 
marketing. 
Parte dessas informações pode ser obtida da sua própria 
organização, mas talvez seja necessário recorrer a fontes externas para 
buscar outros dados. Ao analisar esses conjuntos de informações como um 
todo, você chegará a conclusões diferentes daquelas que conseguiria caso 
examinasse cada conjunto separadamente. 
5. Tire conclusões. 
Durante a análise de dados, você provavelmente chegará a diversas 
conclusões sobre o que observou. Entretanto, a conclusão merece ter uma 
etapa dedicada e específica porque é importante identificar o que se observa 
nos dados ao compartilhar tais deduções com os demais. 
Ao tirar conclusões, estas são as principais perguntas a responder: 
• O que eu já sabia a respeito dos dados que estou analisando? 
• Quais foram as novas informações que descobri com estes 
dados? 
• De que forma posso usar as informações que obtive para 
atingir as metas da empresa? 
 
39 
 
Quando essas perguntas tiverem sido respondidas, você terá 
concluído a análise dos dados e poderá tomar decisões embasadas em 
dados para o seu negócio. 
Dados x Dataset x Databases 
1. Dados: se refere a fatos, informações ou estatísticas coletadas, 
registradas ou representadas de alguma forma. Pode ser qualquer 
forma de representação simbólica de informações, como números, 
palavras, imagens, sons etc. Dados podem ser brutos ou processados 
e têm o potencial de serem transformados em informações 
significativas por meio de análise e interpretação. 
2. Datasets: (conjuntos de dados) são coleções organizadas de dados 
que compartilham uma característica comum ou que foram coletados 
para um propósito específico. Um conjunto de dados pode ser 
estruturado (com tabelas e relacionamentos definidos, como em um 
banco de dados relacional) ou não estruturado (como um conjunto de 
documentos de texto, imagens ou áudio). Datasets são 
frequentemente usados para análise, pesquisa, treinamento de 
modelos de aprendizado de máquina e outros fins. 
3. Databases: (bancos de dados) são sistemas organizados para 
armazenar, gerenciar e recuperar dados de forma eficiente e segura. 
Eles fornecem uma estrutura para criar, manipular e consultar dados, 
garantindo a integridade, segurança e disponibilidade deles. Bancos 
de dados podem ser usados para armazenar informações 
estruturadas em tabelas (como em bancos de dados relacionais) ou 
informações não estruturadas (como em bancos de dados NoSQL). 
Eles são amplamente utilizados em aplicações de software para lidar 
com grandes volumes de dados e garantir o acesso rápido e confiável 
aos dados necessários. 
 
40 
 
Em resumo, “Dados” é a informação em sua forma bruta ou 
processada, “Datasets” são coleções organizadas de dadose “Databases” 
são sistemas que gerenciam e armazenam dados de forma estruturada para 
fácil acesso e recuperação. 
 
 
41 
 
Tipos de Datasets 
1. Numerical Dataset: os dados são expressos em forma de números – 
peso, altura etc. 
2. Bivariate Dataset: duas variáveis relacionadas – vendas de sorvete 
x temperatura do dia. 
3. Multivariate Dataset: conjunto de variáveis – Se temos que medir o 
comprimento, largura, altura, volume de uma caixa retangular, 
temos que usar múltiplas variáveis para distinguir entre essas 
entidades. 
4. Categorical Dataset: representam características – estado civil 
(casado, solteiro, divorciado etc.). 
5. Correlation Dataset: o conjunto de valores que demonstram algum 
relacionamento entre si indica conjuntos de dados de correlação. 
Aqui os valores são encontrados como dependentes uns dos outros 
– sorvete x temperatura do dia. 
Conceitos de Pipeline de Dados 
Um pipeline de dados é um conjunto de processos interconectados 
que permitem a coleta, transformação e análise de dados de forma 
automatizada e eficiente. 
Esse conceito é amplamente utilizado em ciência de dados, 
engenharia de dados e análise de dados para facilitar o fluxo de informações 
de uma etapa para a próxima. 
No mundo de hoje, as organizações estão se movendo em direção à 
tomada de decisões baseadas em dados. Eles estão usando dados para criar 
aplicativos que podem ajudá-los a tomar decisões. Os dados os ajudam a 
melhorar sua produtividade e receita trabalhando nos desafios de negócios. 
 
42 
 
Por meio de dados, as organizações conhecem as tendências de mercado, a 
experiência do cliente e podem tomar ações nesse sentido. 
Mas nem sempre é possível ter os dados que eles precisam em 
apenas um local. Os dados de que necessitam podem ser colocados em 
vários locais, portanto eles precisam se aproximar de várias fontes para 
coletar dados. Esse é um processo demorado, bem como uma tarefa 
complicada à medida que o volume de dados aumenta. 
Para resolver esses problemas, eles exigem que o Data Pipeline 
tenha dados disponíveis que possam ser usados para obter insights e tomar 
decisões. O Data Pipeline ajuda a extrair dados de várias fontes e 
transformá-los para usá-los. Os pipelines de dados podem ser usados para 
transferir dados de um lugar para outro, ETL (Extract-Transform-Load), ELT 
(Extract-Load-Transform), enriquecimento de dados e análise de dados em 
tempo real. 
Portanto, o pipeline de dados é uma série de etapas que coletam 
dados brutos de várias fontes, transformam, combinam, validam e os 
transferem para um destino. Ele elimina a tarefa manual e permite que os 
dados se movam sem problemas. Assim, também elimina erros manuais. Ele 
divide os dados em pequenos pedaços e os processa paralelamente, 
reduzindo assim o poder de computação. 
Figura 5 – Importância do Pipeline de Dados. 
 
 
43 
 
Fonte: https://www.xenonstack.com/insights/data-pipeline-benefits-
importance. 
Conceitos-Chave 
Coleta de Dados: esta é a primeira etapa do pipeline, onde os dados 
são obtidos a partir de várias fontes, como bancos de dados, APIs, sensores, 
arquivos de registro, redes sociais, entre outros. 
• Limpeza de Dados: nesta etapa, os dados coletados são 
processados para remover valores ausentes, duplicados, 
incorretos ou irrelevantes. Isso garante que os dados estejam 
de alta qualidade antes de prosseguir para análises 
posteriores. 
• Transformação de Dados: os dados geralmente precisam ser 
transformados para que estejam em um formato adequado 
para análise. Isso pode incluir a padronização de formatos, a 
conversão de tipos de dados e a criação de novas variáveis 
derivadas. 
• Armazenamento de Dados: os dados transformados são 
armazenados em um local centralizado, como um banco de 
dados ou um sistema de armazenamento distribuído. Isso 
permite o acesso fácil e rápido aos dados para análises 
futuras. 
• Processamento de Dados em Lote e em Tempo Real: 
dependendo dos requisitos, os pipelines de dados podem ser 
projetados para processar dados em lote (em lotes periódicos) 
ou em tempo real (à medida que os dados chegam). 
• Análise de Dados: uma vez que os dados estejam 
armazenados e prontos, podem ser aplicadas técnicas de 
análise de dados, como estatísticas descritivas, aprendizado 
https://www.xenonstack.com/insights/data-pipeline-benefits-importance
https://www.xenonstack.com/insights/data-pipeline-benefits-importance
 
44 
 
de máquina, mineração de dados ou qualquer outra 
abordagem relevante para o problema em questão. 
• Visualização de Dados: as informações extraídas dos dados 
podem ser comunicadas de forma eficaz por meio de 
visualizações, como gráficos e relatórios, para ajudar na 
tomada de decisões. 
• Monitoramento e Gerenciamento: é importante monitorar o 
pipeline de dados para garantir que ele esteja funcionando de 
forma confiável e eficiente. Isso envolve a detecção e o 
tratamento de erros, bem como a otimização do desempenho. 
• Segurança e Privacidade: a segurança dos dados é 
fundamental em um pipeline de dados. Medidas de segurança 
devem ser implementadas para proteger os dados contra 
acesso não autorizado e garantir a conformidade com 
regulamentos de privacidade. 
• Escalabilidade: os pipelines de dados devem ser projetados de 
forma escalável para lidar com grandes volumes de dados à 
medida que a empresa cresce. 
• Automação: a automação é essencial para garantir a eficiência 
do pipeline, reduzindo a necessidade de intervenção manual 
em tarefas rotineiras. 
• Feedback e Melhoria Contínua: é importante coletar feedback 
sobre o desempenho do pipeline e fazer melhorias constantes 
para garantir que ele atenda às necessidades em constante 
evolução da organização. 
Passos na Criação de um Pipeline de Dados 
 
45 
 
De acordo com o propósito, existem diferentes tipos de soluções de 
pipeline de dados. 
Tempo real – Real Time: Isso é valioso para processar dados em 
tempo real. O tempo real é útil quando os dados são processados de uma 
fonte de streaming, como os mercados financeiros. 
Lote – Batch: em vez de dados em tempo real, quando as 
organizações desejam mover um grande volume de dados após um intervalo 
regular, o processo em lote é otimizado. Tal como monitorar oportunamente 
os dados de marketing para análise em outros sistemas. 
Nativo da nuvem – Cloud Native: ele pode ser usado quando eles 
trabalham com dados da nuvem, como dados do bucket da AWS. Isso pode 
ser hospedado na nuvem, permitindo assim economizar dinheiro em 
infraestrutura, pois, caso contrário, as organizações dependeriam da 
infraestrutura para hospedar o pipeline. 
Código aberto – Open Source: pipelines de dados de código aberto 
são alternativas aos fornecedores comerciais. Estes são mais baratos do que 
seus homólogos comerciais (peer). Mas para usar essas ferramentas e 
experiência é necessário verificar se as organizações têm a experiência para 
desenvolver e estender sua funcionalidade. 
Componentes de um Pipeline de Dados 
Source – Fonte: o pipeline de dados coleta os dados da fonte de 
dados. Pode ser uma fonte de geração ou qualquer sistema de 
armazenamento de dados. 
Destination – Destino: este é o ponto onde os dados devem ser 
transferidos. O ponto de destino depende do aplicativo para o qual os dados 
são extraídos. Pode ser uma ferramenta de análise ou um local de 
armazenamento. 
 
46 
 
Data Flow – Fluxo de dados: quando os dados são movidos da origem 
para o destino, esse processo é conhecido como fluxo de dados. ETL (Extract, 
Transform, and Load) é um de seus exemplos. 
Processing – Processamento: esta é uma implementação de fluxo de 
dados que determina como os dados devem ser extraídos, transformados e 
armazenados, pois temos vários métodos para implementá-los. 
Workflow – Fluxo de trabalho: decide a sequência de processos e 
monitora sua dependência. Certifica-se de que o upstream (ingestãode 
dados) deve ser concluído antes de downstream (transferência de dados). 
Monitoring – Monitoramento: o monitoramento consistente é 
necessário para a integridade, consistência e perda de dados. Ele também 
monitora a velocidade e a eficiência do pipeline, dependendo do volume de 
dados. 
Figura 6 – Processo do Pipeline de Dados. 
 
Fonte: https://www.xenonstack.com/insights/data-pipeline-benefits-
importance. 
Elementos de um Pipeline de Dados 
https://www.xenonstack.com/insights/data-pipeline-benefits-importance
https://www.xenonstack.com/insights/data-pipeline-benefits-importance
 
47 
 
A origem – um pipeline extrai dados desses locais. Sistemas de 
gerenciamento de banco de dados relacional (RDBMS), sistemas de 
gerenciamento de relacionamento com o cliente (CRMs), sistemas de 
planejamento de recursos empresariais (ERPs), ferramentas de 
gerenciamento de mídias sociais e até sensores de dispositivos IoT são 
exemplos. 
Destino – esse é o ponto de extremidade do pipeline de dados, onde 
todos os dados extraídos são despejados. O destino final de um pipeline de 
dados é frequentemente um Data Lake ou um Data Warehouse, que é 
mantido para análise. Mas nem sempre é assim, os dados podem ser 
fornecidos diretamente em ferramentas de visualização de dados para 
análise. 
Fluxo de Informações – à medida que os dados se movem da origem 
para o destino, eles mudam. Dataflow é o termo para a movimentação de 
dados. ETL, ou Extrair, Transformar e Carregar, é uma das metodologias de 
fluxo de dados mais prevalentes. 
Preparação – etapas envolvidas na extração de dados de várias 
fontes, alterá-los e transportá-los para um local específico. O componente 
de processamento de um pipeline de dados determina como o fluxo de 
dados deve ser implementado. Qual procedimento de extração deve ser 
utilizado para a ingestão de dados, por exemplo. O processamento em lote e 
o processamento de fluxo são duas maneiras típicas de extrair dados de 
fontes. 
Processos – o fluxo de trabalho se preocupa com a forma como os 
trabalhos em um pipeline de dados são executados e sua interdependência. 
Quando um pipeline de dados é executado, ele é determinado por suas 
dependências e sequenciamento. Na maioria dos pipelines de dados, as 
atividades upstream devem ser concluídas com êxito antes que os trabalhos 
downstream possam começar. 
 
48 
 
Monitorização – para garantir a correção dos dados e evitar a perda 
de dados, um pipeline de dados deve ser monitorado regularmente. A 
velocidade e a eficiência de um pipeline também são verificadas, 
especialmente à medida que a maior parte dos dados aumenta. 
Importância de um Pipeline de Dados 
O Data Pipeline é importante quando os dados são armazenados em 
locais diferentes, sua análise combinada é necessária. Por exemplo, existe 
um sistema para e-commerce que exige os dados pessoais e de compra de 
produtos do usuário para segmentar os clientes. Portanto, ele precisa de um 
pipeline de dados para coletar dados do CRM (onde os dados do usuário são 
salvos) e dados do site sobre seus dados de compra, pedido e visita. 
Pode ser possível que haja um grande volume de dados e os 
aplicativos de análise também são muito grandes e complexos. É possível 
que o uso do mesmo sistema para análise onde os dados são gerados ou 
estão presentes, retarde o processo de análise. Como resultado, é necessário 
reduzir o efeito sobre o desempenho do pipeline de dados de serviço. 
Quando as equipes de análise e produção são diferentes, as 
organizações usuárias não querem que a equipe de análise acesse o sistema 
de produção. Nesse caso, não é necessário compartilhar todos os dados com 
o analista de dados, para reduzir as interrupções e automatizar o processo 
para que cada vez não tenha que coletar dados manualmente sempre que 
for necessário. 
Desafio de Pipelines de Dados 
Migração de dados 
Dependendo do consumo de dados, as empresas podem precisar 
migrar seus dados de um lugar para outro. Muitas empresas executam 
trabalhos em lote no período noturno para aproveitar os recursos de 
 
49 
 
computação fora do horário de pico. Portanto, você vê os dados de ontem a 
partir dos dados de hoje, impossibilitando decisões em tempo real. 
O Apache Kafka tende a ser preferido para ingestão de dados em 
larga escala. Ele particiona dados para que produtores, corretores e 
consumidores possam escalar automaticamente à medida que a carga de 
trabalho e a taxa de transferência se expandem. 
Auto Scaling de Processamento e Armazenamento de Dados 
O volume e a velocidade de dados atuais podem renderizar sua 
abordagem para importar dados em lotes atômicos isolados de tudo ou 
nada. A melhor solução é um sistema gerenciado que fornece 
dimensionamento automático de armazenamento de dados e nós de 
trabalho. Ele proporcionará facilidade no gerenciamento de cargas de 
trabalho imprevisíveis, de diferentes padrões de tráfego. 
Por exemplo, no caso do Kinesis Data Stream, um alarme do 
CloudWatch observa as métricas de estilhaço do Kinesis Data Stream e um 
limite personalizado do alarme é configurado. O limite de alarme é atingido 
à medida que o número de solicitações cresce e o alarme é disparado. Esse 
disparo envia uma notificação para uma política de Auto Scaling de 
aplicativo que aumentará o número de fragmentos de fluxo de dados do 
kinesis. 
Outro exemplo é o dimensionamento automático do processamento 
de dados. No caso de ETL leve, como o Lambda Pipeline, o AWS Lambda 
criará uma instância da função na primeira vez que você invocar uma função 
lambda e executar seu método de manipulador. Agora, se a função for 
invocada novamente enquanto o primeiro evento estiver sendo processado, 
o Lambda inicializará outra instância e a função lambda processará dois 
eventos simultaneamente. À medida que mais eventos chegam, a função 
lambda cria novas instâncias conforme necessário, e à medida que as 
 
50 
 
solicitações diminuem, o Lambda libera a capacidade de dimensionamento 
para outras funções. 
No caso de ETL pesado como o Spark, o cluster pode aumentar e 
diminuir a escala da unidade de processamento (nós de trabalho), 
dependendo da carga de trabalho. 
Leituras e gravações otimizadas de dados no processo de pipeline 
O desempenho do pipeline pode ser aprimorado reduzindo o 
tamanho dos dados que você está ingerindo, ou seja, ingerindo apenas os 
dados brutos necessários e mantendo os quadros de dados intermediários 
compactos. Ler apenas dados úteis na memória pode acelerar seu aplicativo. 
É igualmente importante otimizar as gravações de dados que você 
executa no pipeline. Gravar menos saída na origem de destino também 
melhora o desempenho facilmente. Essa etapa costuma receber menos 
atenção. Os dados gravados em Data Warehouses na maioria das vezes não 
são compactos. Isso não só ajudará a reduzir o custo de armazenamento de 
dados, mas também o custo de processos downstream para lidar com linhas 
desnecessárias. Assim, arrumar a produção do seu pipeline distribui 
benefícios de desempenho para todo o sistema e empresa. 
Cache de dados e configurações para o bom funcionamento de 
execuções de pipeline 
Através do cache de dados, as saídas ou dependências baixadas de 
uma execução podem ser reutilizadas em execuções posteriores, 
melhorando assim o tempo de compilação. Isso ajudará a reduzir o custo 
para recriar ou baixar novamente os mesmos arquivos. É útil em situações 
em que, no início de cada execução, as mesmas dependências são baixadas 
repetidamente. Este é um processo demorado que envolve um grande 
número de chamadas de rede. 
 
 
 
 
2 
 
52 
 
Capítulo 2. Processamento de Dados 
O que é Processamento de Dados? 
Também denominado Processamento automático de dados (PAD), 
ou Processamento Eletrônico de Dados (PED) as atividades que utilizam a 
computação em seu processo. No entanto, foi justamente o advento dos 
computadores quedinamizou de tal forma o tratamento das informações 
que, a partir daí é que se vulgarizou a terminologia Processamento de Dados, 
de modo que essa denominação se associa, no presente, a ideia do emprego 
de computadores. 
É o tratamento sistemático de dados, através de computadores e 
outros dispositivos eletrônicos, com o objetivo de ordenar, classificar ou 
efetuar quaisquer transformações nos dados, segundo um plano 
previamente programado, visando a obtenção de um determinado resultado. 
De modo geral, um processamento se realiza de acordo com o 
esquema abaixo: 
A entrada (input): se refere a algum dado de entrada do 
processamento, são valores onde o processo irá atuar. Por exemplo, um 
arquivo enviado para um compressor de dados. 
O processamento: é onde os dados de entrada serão processados 
para gerar um determinado resultado. O computador executa o arquivo. 
(Outros exemplos: o cálculo salarial, uma complexa expressão matemática 
ou até mesmo uma simples movimentação de dados ou comparação entre 
eles). No caso do processamento computadorizado, esta tarefa é realizada 
por meio de um algoritmo escrito numa linguagem de programação que é 
compilado e gera o código de um programa responsável pelo 
processamento. 
 
53 
 
A saída (output): é simplesmente o resultado de todo o 
processamento, em todo processamento temos dados gerados como 
resultado, essas saídas podem ser impressas na tela, em papel, armazenadas 
em um arquivo ou até mesmo servir como entrada para um outro processo. 
O computador exibe os resultados obtidos na tela. 
Figura 7 – Processamento de Dados. 
 
Fonte: https://www.educba.com/what-is-data-processing/. 
O processamento de dados é coletar e manipular dados na forma 
utilizável e desejada. Os dados podem ser manipulados manual ou 
automaticamente, dependendo da sequência predefinida de operações. 
No passado, era feito manualmente, o que era demorado e com 
possibilidade de erros ao processar. Hoje os computadores executam a 
maioria das tarefas de processamento automaticamente, permitindo um 
processamento rápido e resultados precisos. 
O próximo ponto é converter para a forma desejada. A ferramenta 
processa e converte o coletado no formulário desejado com base em seus 
requisitos. Essa transformação muta os dados em informações úteis, que o 
aplicativo pode utilizar para realizar tarefas específicas. 
A entrada do processamento é a coleta de dados de diferentes 
fontes, como dados de arquivos de texto, dados de arquivos excel, bancos 
https://www.educba.com/what-is-data-processing/
 
54 
 
de dados e até mesmo dados não estruturados, como imagens, clipes de 
áudio, clipes de vídeo, dados GPRS, etc. As ferramentas de processamento 
de dados comumente disponíveis são Hadoop, Storm, HPCC, Qubole, 
Statwing, CouchDB etc. 
E a saída do processamento de dados é uma informação significativa 
que pode estar em diferentes formas, como uma tabela, imagem, gráfico, 
arquivo vetorial, áudio e todos os formatos obtidos dependendo do 
aplicativo ou software necessário. 
Como os dados devem ser processados? 
O processamento de dados começa com a coleta de dados. Para o 
formato desejado, ele deve ser processado passo a passo. Isso inclui 
armazenamento, classificação, processamento, análise e apresentação dos 
dados. 
As seis etapas básicas envolvidas no processamento de dados para 
garantir um processamento eficiente, são: 
Figura 8 – Etapas do Processamento de Dados. 
 
Fonte: https://www.educba.com/what-is-data-processing/. 
1. Coleta de dado: é como coletamos dados logicamente 
relacionados de várias fontes, formatos e tipos, como XML, arquivos CSV, 
mídias sociais e imagens, que podem ser estruturados ou não. 
https://www.educba.com/what-is-data-processing/
 
55 
 
2. Armazenamento de Dados: a coleta de dados agora deve ser 
armazenada em formas físicas, essa coleta de dados é enorme porque pers, 
notebooks ou qualquer outra mineração de dados e Big Data, a coleta de 
dados é enorme, mesmo em formatos estruturados ou não estruturados. O 
aplicativo armazenará digitalmente os dados para análise e apresentação 
significativas de acordo com seus requisitos. 
3. Classificação de dados: após a etapa de armazenamento, a etapa 
imediata será a classificação e filtragem. A classificação e a filtragem são 
necessárias para organizar os dados em uma ordem significativa e extrair 
apenas as informações necessárias. Isso permite uma melhor compreensão, 
visualização e análise dos dados. 
4. Tratamento de Dados: uma série de processamento ou uso 
contínuo e processamento executado para verificar, transformar, organizar, 
integrar e extrair dados em um formulário de saída útil para uso posterior. 
5. Análise dos dados: durante a análise dos dados, os analistas 
aplicam ou avaliam sistematicamente o raciocínio analítico e lógico para 
ilustrar cada componente dos dados fornecidos, resultando em uma decisão 
ou resultado conclusivo. 
6. Apresentação dos Dados e Conclusões: uma vez que chegamos ao 
resultado da análise, ele pode ser representado em diferentes formas, como 
um gráfico, arquivo de texto, arquivo excel, gráfico etc. 
Conceitos em Processamento de Dados 
Aqui estão alguns conceitos-chave relacionados ao processamento 
de dados: 
Coleta de Dados: o primeiro passo no processamento de dados é a 
coleta de informações relevantes a partir de fontes diversas, como sensores, 
formulários, sistemas de informação, redes sociais, entre outros. 
 
56 
 
Validação de Dados: após a coleta, os dados passam por um processo 
de validação para garantir que estejam completos, precisos e consistentes. 
Isso pode envolver a verificação de formatos, a detecção de valores ausentes 
ou inválidos e a correção de erros. 
Limpeza de Dados: a limpeza de dados é o processo de remoção de 
dados duplicados, inconsistentes ou irrelevantes. Isso ajuda a melhorar a 
qualidade dos dados e reduzir problemas durante o processamento. 
Transformação de Dados: a transformação de dados envolve a 
modificação dos dados de várias maneiras, como conversão de formatos, 
normalização de valores, agregação, filtragem, entre outros. Essas 
transformações visam preparar os dados para análise ou uso em aplicativos. 
Integração de Dados: A integração de dados é a combinação de 
informações de diferentes fontes em um único conjunto de dados coeso. 
Isso é importante quando os dados estão espalhados em sistemas 
heterogêneos. 
Armazenamento de Dados: os dados processados são armazenados 
em sistemas de gerenciamento de dados, como bancos de dados, Data Lakes 
ou Data Warehouses, para acesso e consulta posteriores. 
Análise de Dados: após o processamento e armazenamento, os 
dados estão prontos para análise. A análise de dados envolve a exploração, 
modelagem e interpretação das informações para obter insights e tomar 
decisões informadas. 
Segurança de Dados: a segurança de dados é crucial durante todo o 
processo de processamento de dados. Isso inclui medidas para proteger 
dados sensíveis contra acesso não autorizado, perda de dados e garantir 
conformidade com regulamentações de privacidade. 
 
57 
 
Automatização: muitos processos de processamento de dados são 
automatizados usando software e scripts para melhorar a eficiência e 
reduzir erros humanos. 
Visualização de Dados: a visualização de dados é a representação 
gráfica dos resultados da análise para facilitar a compreensão e a 
comunicação de informações complexas. 
Manutenção e Monitoramento: os sistemas de processamento de 
dados requerem manutenção regular para garantir que continuem 
funcionando de maneira eficaz. Isso inclui monitorar o desempenho, 
solucionar problemas e fazer atualizações conforme necessário. 
Escalabilidade: a capacidade de escalabilidade é importante para 
lidar com volumes crescentes de dados à medida que uma organização 
cresce. 
O processamento de dados desempenha um papel fundamental emvárias áreas, desde análise de negócios e pesquisa científica, até automação 
de processos e tomada de decisões em tempo real. É uma disciplina 
essencial para aproveitar o valor dos dados em um mundo cada vez mais 
orientado por informações. 
Modelos de Processamento de Dados 
Existem vários modelos de processamento de dados que são usados 
em diferentes contextos e para atender a várias necessidades de 
processamento de informações. Alguns dos modelos mais comuns incluem: 
Processamento em Lote (Batch Processing) 
Descrição: este é um modelo em que os dados são coletados, 
processados e armazenados em lotes, geralmente em intervalos 
programados. 
 
58 
 
Aplicações: é comumente utilizado para tarefas que não exigem 
processamento em tempo real, como geração de relatórios, atualização de 
bancos de dados e processamento de grandes volumes de dados históricos. 
Processamento em Tempo Real (Real-Time Processing) 
Descrição: neste modelo, os dados são processados assim que são 
gerados ou recebidos, com baixa latência entre a entrada e a saída. 
Aplicações: é adequado para cenários que exigem respostas 
imediatas, como sistemas de monitoramento de tempo real, detecção de 
fraudes e aplicações de streaming de dados. 
Processamento em Memória (In-Memory Processing) 
Descrição: neste modelo os dados são mantidos em memória 
principal (RAM) para acesso e processamento extremamente rápidos. 
Aplicações: é usado quando a velocidade de acesso aos dados é 
crítica, como em bancos de dados em memória, sistemas de análise de alto 
desempenho e cache em memória. 
Processamento Distribuído (Distributed Processing) 
Descrição: neste modelo o processamento de dados é distribuído em 
vários nós de computação em um cluster ou rede, permitindo o 
processamento paralelo e escalabilidade. 
Aplicações: é útil para processar grandes volumes de dados de 
maneira eficiente, como em sistemas de Big Data, processamento de dados 
na nuvem e clusters de processamento. 
Processamento por Lote e Streaming 
Descrição: combina o processamento em lote e em tempo real, 
permitindo que os dados sejam processados em lotes e em streaming, 
dependendo das necessidades. 
 
59 
 
Aplicações: é útil quando uma aplicação requer tanto análise em 
tempo real quanto análise de dados históricos, como em aplicações de IoT 
e análise de eventos em tempo real. 
Processamento ETL (Extração, Transformação e Carga) 
Descrição: este modelo envolve a extração de dados de várias fontes, 
a transformação dos dados para atender a requisitos específicos e a carga 
dos dados em um destino, como um Data Warehouse. 
Aplicações: é amplamente utilizado na integração de dados, 
preparação de dados para análise e migração de dados entre sistemas. 
Processamento de Gráfico (Graph Processing) 
Descrição: esse modelo se concentra na análise de relações 
complexas entre os dados, usando estruturas de grafo para representar 
conexões. 
Aplicações: é usado em redes sociais, análise de redes, roteamento 
de tráfego e detecção de padrões em conjuntos de dados conectados. 
Cada um desses modelos de processamento de dados é adequado 
para situações diferentes, dependendo dos requisitos de latência, 
escalabilidade, complexidade de análise e volume de dados. A escolha do 
modelo certo depende das necessidades específicas do seu projeto e dos 
recursos disponíveis. Existem vários modelos de processamento de dados 
que são usados em diferentes contextos e para atender a várias 
necessidades de processamento de informações. 
Processamento Distribuído 
O processamento distribuído é um processo de computação em que 
as operações são particionadas em vários computadores conectados através 
de uma rede. O objetivo do processamento distribuído é fornecer um serviço 
mais rápido e confiável do que pode ser alcançado por uma única máquina. 
 
60 
 
Muitas vezes, os conjuntos de dados são grandes demais para caber 
em uma máquina. O processamento distribuído de dados divide esses 
grandes conjuntos de dados e os armazena em várias máquinas ou 
servidores, melhorando o gerenciamento de dados. Ele repousa no Hadoop 
Distributed File System (HDFS). Um sistema de processamento de dados 
distribuído tem uma alta tolerância a falhas. Se um servidor na rede falhar, 
você poderá realocar tarefas de processamento de dados para outros 
servidores disponíveis, o que não é um trabalho muito demorado. 
O processamento distribuído também pode economizar custos. 
Empresas como a sua não precisam mais construir computadores 
mainframe caros com CPUs e investir em sua manutenção e manutenção. 
 
 
61 
 
Figura 9 –Processamento Distribuído. 
 
Fonte: https://www.geeksforgeeks.org/introduction-to-hadoop-distributed-file-
systemhdfs/. 
Processamento em Tempo Real 
O processamento em tempo real é o processo de computação de 
dados assim que eles são gerados ou recebidos. É uma forma de 
processamento distribuído que permite capturar e analisar fluxos de dados 
recebidos em tempo real, permitindo que você aja rapidamente sobre os 
insights fornecidos pela análise. 
O processamento em tempo real é semelhante ao processamento de 
transações, pois você o usa em situações em que espera a saída em tempo 
real. No entanto, os dois diferem em como lidam com a perda de dados. O 
processamento em tempo real calcula os dados recebidos o mais rápido 
possível. Se ele encontrar um erro nos dados de entrada, ele ignorará o erro 
e passará para a próxima parte da entrada de dados que chega. Os 
aplicativos de rastreamento por GPS são o exemplo mais comum de 
processamento de dados em tempo real. 
https://www.geeksforgeeks.org/introduction-to-hadoop-distributed-file-systemhdfs/
https://www.geeksforgeeks.org/introduction-to-hadoop-distributed-file-systemhdfs/
 
62 
 
Compare isso com o processamento de transações. Em caso de erro, 
como uma falha do sistema, o processamento de transações aborta o 
processamento contínuo e é reinicializado. Você pode preferir o 
processamento em tempo real ao processamento de transações nos casos 
em que as respostas aproximadas são suficientes. 
No mundo da análise de dados, o processamento de fluxo é uma 
aplicação comum de processamento de dados em tempo real. Popularizado 
pela primeira vez pelo Apache Storm, o processamento de fluxo analisa os 
dados à medida que eles chegam. Pense em dados de sensores IoT ou 
rastreie a atividade do consumidor em tempo real. Google BigQuery e 
Snowflake são exemplos de plataformas de dados em nuvem que empregam 
processamento em tempo real. Você pode então executar dados por meio de 
ferramentas de business intelligence, que usam inteligência artificial e 
aprendizado de máquina para gerar insights valiosos que influenciam a 
tomada de decisões. 
Figura 10 –Processamento em Tempo Real. 
 
Fonte: https://k21academy.com/microsoft-azure/data-engineer/batch-
processing-vs-stream-processing/. 
Processamento em Lote 
O processamento em lote é quando pedaços de dados, armazenados 
durante um período de tempo, são analisados juntos ou em lotes. O 
processamento em lote é necessário quando proprietários de empresas e 
https://k21academy.com/microsoft-azure/data-engineer/batch-processing-vs-stream-processing/
https://k21academy.com/microsoft-azure/data-engineer/batch-processing-vs-stream-processing/
 
63 
 
cientistas de dados exigem um grande volume de dados para analisar para 
obter insights detalhados. Por exemplo, os números de vendas normalmente 
passam por processamento em lote, permitindo que as empresas usem 
recursos de visualização de dados, como gráficos, gráficos e relatórios, para 
derivar valor dos dados. Como um grande volume de dados está envolvido, o 
sistema levará tempo para processá-los. O processamento dos dados em 
lotes economiza recursos computacionais. 
Você pode preferir o processamento em lote ao processamento em 
tempo real quando a precisão é mais importante do que a velocidade.Além 
disso, você pode medir a eficiência do processamento em lote em termos de 
taxa de transferência. Taxa de transferência é a quantidade de dados 
processados por unidade de tempo. 
Figura 11 – Processamento em Lote. 
 
Fonte: https://k21academy.com/microsoft-azure/data-engineer/batch-
processing-vs-stream-processing/. 
Ferramentas e Tecnologias de Processamento de Dados 
Existem muitas ferramentas disponíveis para o processamento de 
dados em várias etapas do ciclo de vida de dados, desde a coleta até a análise 
e a visualização. A escolha das ferramentas depende dos requisitos 
específicos do seu projeto e das tecnologias com as quais você está 
trabalhando. 
Ferramentas para Coleta de Dados 
https://k21academy.com/microsoft-azure/data-engineer/batch-processing-vs-stream-processing/
https://k21academy.com/microsoft-azure/data-engineer/batch-processing-vs-stream-processing/
 
64 
 
Flume: uma ferramenta de coleta de dados que permite a ingestão 
de dados de várias fontes para sistemas de armazenamento, como Hadoop 
HDFS. 
Kafka Connect: parte do ecossistema Apache Kafka, o Kafka Connect 
é uma estrutura para conectar fontes e destinos de dados, permitindo a 
captura de dados em tempo real e a replicação para várias fontes de destino. 
Logstash: uma ferramenta de coleta de dados da Elastic Stack (ELK), 
que é especialmente adequada para processar logs e eventos de várias 
fontes e enviá-los para sistemas de armazenamento e análise, como o 
Elasticsearch. 
Filebeat: outra ferramenta da Elastic Stack, o Filebeat, é projetado 
especificamente para coletar e enviar logs e arquivos de registro para o 
Elasticsearch ou outros destinos. 
Fluentd: uma plataforma de coleta de logs e eventos que pode 
coletar dados de várias fontes e enviá-los para diferentes destinos, como 
bancos de dados, armazenamento em nuvem e sistemas de análise. 
AWS Data Pipeline: um serviço da Amazon Web Services (AWS) que 
permite a coleta, transformação e movimentação de dados entre diferentes 
serviços da AWS e fontes externas. 
Google Cloud Dataflow: uma plataforma de processamento de dados 
gerenciada na Google Cloud que oferece recursos de ingestão, 
transformação e movimentação de dados em tempo real e em lote. 
Microsoft Azure Data Factory: um serviço na Microsoft Azure que 
permite a criação de pipelines de dados para coleta, transformação e 
movimentação de dados em várias fontes e destinos. 
Splunk: uma plataforma de análise de dados que também oferece 
recursos de coleta de dados para logs, eventos e métricas de várias fontes. 
 
65 
 
Rsyslog: um sistema de log open source que pode coletar, processar 
e encaminhar logs de várias fontes para destinos diferentes. 
Flume-ng (Flume Next Generation): uma versão mais recente e em 
desenvolvimento do Apache Flume, que oferece recursos aprimorados de 
coleta de dados em comparação com a versão anterior. 
 
 
66 
 
Ferramentas para Validação e Limpeza de Dados 
OpenRefine: uma ferramenta de código aberto para limpeza e 
transformação de dados. 
Trifacta: uma plataforma de preparação de dados que ajuda na 
limpeza e na transformação de dados de forma visual. 
Ferramentas para Transformação de Dados 
Apache NiFi: uma ferramenta de integração de dados que permite a 
criação de pipelines de dados para transformação e movimentação de dados 
em tempo real. 
Talend: uma plataforma de integração de dados que oferece 
recursos de transformação de dados e ETL. 
Ferramentas para Armazenamento de Dados 
Apache Hadoop: um ecossistema de armazenamento e 
processamento de Big Data que inclui o HDFS (Hadoop Distributed File 
System). 
Amazon S3: um serviço de armazenamento em nuvem escalável da 
Amazon Web Services. 
Ferramentas para Processamento em Lote 
Apache Spark: uma plataforma de processamento de dados em 
cluster que suporta processamento em lote e em tempo real. 
Apache Flink: uma plataforma de processamento de dados em 
streaming e em lote. 
Ferramentas para Processamento em Tempo Real 
Apache Kafka: uma plataforma de streaming de alto desempenho 
para processamento em tempo real de eventos. 
 
67 
 
Apache Storm: um sistema de computação em tempo real para 
processamento de fluxos contínuos de dados. 
Ferramentas para Integração de Dados 
Apache Camel: uma estrutura de integração de código aberto que 
facilita a integração de sistemas e aplicativos. 
MuleSoft: uma plataforma de integração de aplicativos que facilita a 
integração de sistemas empresariais. 
Ferramentas para Processamento Gráfico 
Apache Giraph: uma plataforma para processamento de gráficos em 
larga escala. 
Neo4j: um banco de dados de grafo que permite a análise e a 
consulta de dados de grafo. 
Ferramentas para Análise de Dados e Visualização 
Tableau: uma ferramenta de visualização de dados que permite criar 
painéis interativos. 
Power BI: uma plataforma de análise de negócios da Microsoft que 
oferece recursos de visualização de dados. 
Boas Práticas para Processamento de Dados 
O processamento de dados é uma parte fundamental da gestão de 
informações em muitas organizações. Para garantir a qualidade, a segurança 
e a eficiência do processamento de dados, é importante seguir boas práticas. 
Aqui estão algumas boas práticas a serem consideradas: 
• Coleta de Dados Precisos e Relevantes: certifique-se de coletar 
apenas os dados necessários para o seu objetivo e que eles 
sejam precisos e confiáveis desde o início. 
 
68 
 
• Padronização de Dados: mantenha padrões claros para a 
estrutura e o formato dos dados coletados para facilitar o 
processamento e a análise. 
• Validação de Dados: implemente verificações de validação de 
dados para identificar e corrigir erros ou inconsistências durante 
a coleta. 
• Limpeza de Dados: regularmente, limpe e atualize os dados para 
remover duplicatas, valores ausentes e informações obsoletas. 
• Armazenamento Seguro: armazene os dados em sistemas 
seguros e protegidos contra acesso não autorizado, garantindo 
conformidade com regulamentações de privacidade. 
• Backup e Recuperação: mantenha cópias de backup dos dados 
críticos e implemente um plano de recuperação de desastres 
para evitar perdas de dados. 
• Documentação Adequada: mantenha documentação detalhada 
dos processos de coleta, transformação e armazenamento de 
dados para facilitar a compreensão e a manutenção futura. 
• Privacidade e Conformidade: esteja ciente das 
regulamentações de privacidade de dados (como o GDPR na 
União Europeia) e garanta que os dados sejam tratados de 
acordo com essas leis. 
• Segurança de Dados: implemente medidas de segurança, como 
criptografia e autenticação, para proteger os dados contra 
ameaças cibernéticas. 
 
69 
 
• Processamento em Tempo Real ou em Lote: escolha o modelo 
de processamento adequado com base nos requisitos de 
negócios e nas necessidades de latência. 
• Transformação de Dados Adequada: realize transformações de 
dados de maneira adequada e eficiente, mantendo a qualidade e 
a integridade dos dados. 
• Monitoramento de Desempenho: implemente sistemas de 
monitoramento para rastrear o desempenho dos processos de 
processamento de dados e identificar problemas rapidamente. 
• Backup de Metadados: faça backup de metadados importantes, 
como esquemas de banco de dados, para facilitar a recuperação 
em caso de falha. 
• Acesso Controlado: controle o acesso aos dados, garantindo que 
apenas pessoas autorizadas tenham permissão para visualizar 
ou modificar informações sensíveis. 
• Testes e Validação: realize testes regulares nos processos de 
processamento de dados para garantir que eles funcionem 
conforme o esperado e que os resultados sejam precisos. 
• Treinamento da Equipe: certifique-se de que a equipe envolvida 
no processamento de dados esteja devidamente treinada em 
boas práticas e ciente das políticas de segurança de dados. 
• Revisão de Políticas: revise regularmente as políticas eprocedimentos relacionados ao processamento de dados para 
garantir que eles estejam atualizados e eficazes. 
 
70 
 
• Auditorias e Conformidade: realize auditorias regulares para 
garantir a conformidade com regulamentações e padrões 
relevantes. 
Seguir essas boas práticas ajudará a garantir que os dados sejam 
processados de forma eficiente, segura e confiável, contribuindo para a 
tomada de decisões informadas e para a integridade das informações da 
organização. 
 
 
 
 
3 
 
72 
 
Capítulo 3. Coleta de Dados 
Conceitos de Coleta de Dados 
A coleta de dados é um processo fundamental em diversas áreas, 
incluindo pesquisa, ciência de dados, negócios e tomada de decisões. 
Envolve a obtenção de informações de fontes relevantes para análise, 
estudo ou resolução de problemas específicos. 
Conhecimento é poder, informação é conhecimento e dados são 
informações em formato digitalizado, pelo menos como definido em TI. 
Portanto, dados são poder. Mas antes de aproveitar esses dados em uma 
estratégia bem-sucedida para sua organização ou negócio, você precisa 
recolhê-los. Esse é o seu primeiro passo. 
A coleta de dados é o processo de coletar e avaliar informações ou 
dados de múltiplas fontes para encontrar respostas para problemas de 
pesquisa, responder perguntas, avaliar resultados e prever tendências e 
probabilidades. 
É uma fase essencial em todos os tipos de pesquisa, análise e 
tomada de decisão, incluindo a feita nas ciências sociais, negócios e saúde. 
A coleta acurada de dados é necessária para tomar decisões de 
negócios informadas, garantir a garantia de qualidade e manter a 
integridade da pesquisa. 
Durante a coleta de dados, os pesquisadores devem identificar os 
tipos de dados, as fontes de dados e quais métodos estão sendo utilizados. 
Existem muitos métodos diferentes de coleta de dados. 
Antes de um analista começar a coletar dados, ele deve responder a 
três perguntas primeiro: 
 
73 
 
 
 
74 
 
• Qual é o objetivo ou finalidade desta pesquisa? 
• Que tipos de dados eles planejam coletar? 
• Quais métodos e procedimentos serão usados para coletar, 
armazenar e processar as informações? 
Além disso, podemos dividir os dados em tipos qualitativos e 
quantitativos. Os dados qualitativos abrangem descrições como cor, 
tamanho, qualidade e aparência. Dados quantitativos, sem surpresa, lidam 
com números, como estatísticas, números de pesquisas, porcentagens etc. 
Fontes de Dados 
Refere-se ao local ou à origem de onde os dados são obtidos. As 
fontes de dados podem incluir bancos de dados, pesquisas de campo, 
sensores, registros de transações, fontes públicas na web, redes sociais, 
entre outros. 
1. Fonte de Dados Primárias. 
2. Fonte de Dados Secundárias. 
3. Fonte de Dados Internos. 
4. Fonte de Dados de Sensores e Dispositivos. 
5. Fonte de Dados de Terceiros e Parceiros. 
6. Fonte de Pesquisas de Mercado e Opinião Pública. 
7. Fonte de Dados de Fontes Governamentais. 
Fontes de Dados Primárias: 
• Entrevistas: conversas diretas com indivíduos, especialistas 
ou partes interessadas para obter informações específicas. 
 
75 
 
• Questionários: formulários estruturados usados para coletar 
informações de participantes por meio de respostas escritas. 
• Observação: coleta de dados por meio da observação direta de 
eventos, comportamentos ou processos. 
• Experimentos: coleta de dados por meio de testes controlados 
que manipulam variáveis independentes. 
• Grupos Focais: discussões em grupo estruturadas com 
participantes para explorar ideias ou opiniões. 
• Amostras de Campo: coleta de amostras de substâncias, como 
solo, água, ar ou produtos, para análise laboratorial. 
Fontes de Dados Secundárias: 
• Bancos de Dados Públicos: dados disponibilizados por órgãos 
governamentais, organizações internacionais, instituições 
acadêmicas e outras fontes públicas. 
• Relatórios de Empresas: informações financeiras, relatórios 
anuais, dados de vendas e marketing fornecidos por 
empresas. 
• Pesquisas Anteriores: dados coletados em pesquisas ou 
estudos anteriores que estão disponíveis para referência ou 
reanálise. 
• Fontes de Mídia: notícias, artigos, relatórios e outros 
conteúdos publicados em mídia impressa ou online. 
• Literatura Científica: artigos de revistas acadêmicas, livros e 
publicações acadêmicas que contêm informações relevantes 
para pesquisa. 
 
76 
 
• Dados de Mercado: informações de pesquisa de mercado, 
análises de consumidores e estudos de setores específicos. 
• Redes Sociais e Dados da Web: dados gerados por interações 
online, como mídias sociais, blogs e fóruns. 
Dados Abertos – Ciência 
O conceito de acesso aberto a dados científicos foi estabelecido 
institucionalmente com a formação do sistema World Data Center, em 
preparação para o Ano Geofísico Internacional de 1957-1958. 
O Conselho Internacional de Sindicatos Científicos (agora o 
Conselho Internacional para a Ciência) supervisiona vários Centros de 
Dados Mundiais com o mandato de minimizar o risco de perda de dados e 
maximizar a acessibilidade dos dados. 
Embora o movimento de dados de ciência aberta seja muito anterior 
à Internet, a disponibilidade de redes rápidas e onipresentes mudou 
significativamente o contexto dos dados de ciência aberta, uma vez que 
publicar ou obter dados tornou-se muito menos caro e demorado. 
Projeto Genoma 
O Projeto Genoma Humano foi uma grande iniciativa que 
exemplificou o poder dos dados abertos. Foi construído sobre os chamados 
Princípios das Bermudas, estipulando que: “Todas as informações sobre a 
sequência genômica humana, devem estar disponíveis gratuitamente e em 
domínio público para incentivar a pesquisa e o desenvolvimento e maximizar 
seus benefícios para a sociedade”. 
Mais iniciativas recentes, como o Structural Genomics Consortium, 
mostraram que a abordagem de dados abertos também pode ser usada 
produtivamente no contexto de P&D industrial. 
Kaggle 
 
77 
 
O Kaggle é uma das mais conhecidas plataformas para competições 
de Data Science. A plataforma foi fundada em 2010 por Anthony Goldbloom 
e em 2017 foi adquirida pelo Google (Alphabet). 
O Kaggle dentro da sua plataforma pode hospedar competições de 
Data Science públicas, privadas e acadêmicas. As competições patrocinadas 
por empresas oferecem prêmios em dinheiro pela melhor solução. Também 
existem competições de aprendizado (disponibilizadas pelo próprio Kaggle 
ou por empresas para treinamento de habilidades). A plataforma também 
armazena e disponibiliza dados sobre assuntos diversos (chamados 
datasets) e possui fóruns para troca de conhecimentos entre seus usuários. 
Outras Fontes 
• UC Irvine Machine Learning Repository. 
• Stanford Large Network Dataset Collection. 
• Time Series Data Library. 
• KDnuggets Dataset List. 
• KDD Cup Datasets. 
Dados Abertos – Governo 
Uma das formas mais importantes de dados abertos são os dados 
abertos do governo (OGD), que é uma forma de dados abertos criados por 
instituições governamentais governantes. A importância dos dados 
governamentais abertos nasce do fato de serem parte da vida cotidiana dos 
cidadãos, até as tarefas mais rotineiras, que aparentemente estão muito 
distantes do governo. 
Dados Abertos – Sidra 
Incremente sua aplicação com a API de dados agregados do IBGE, a 
API que alimenta o SIDRA, Sistema IBGE de Recuperação Automática, 
https://archive.ics.uci.edu/
http://snap.stanford.edu/data/
http://robjhyndman.com/TSDL/
http://www.kdnuggets.com/datasets/index.html
http://www.sigkdd.org/kddcup/index.php
 
78 
 
ferramenta que disponibiliza os dados das pesquisas e censos realizados 
pelo IBGE. 
• https://servicodados.ibge.gov.br/api/docs/agregados?versao=3 
Fonte de Dados Públicos 
• 𝐈𝐍𝐄𝐏. 
• 𝐏𝐨𝐫𝐭𝐚𝐥 𝐝𝐚 𝐓𝐫𝐚𝐧𝐬𝐩𝐚𝐫ê𝐧𝐜𝐢𝐚 𝐝𝐨 𝐆𝐨𝐯𝐞𝐫𝐧𝐨 𝐅𝐞𝐝𝐞𝐫𝐚𝐥. 
• 𝐎𝐩𝐞𝐧 𝐃𝐚𝐭𝐚 𝐒𝐔𝐒. 
• 𝐁𝐚𝐬𝐞 𝐝𝐨𝐬 𝐃𝐚𝐝𝐨𝐬 𝐏ú𝐛𝐥𝐢𝐜𝐨𝐬𝐝𝐨 𝐆𝐨𝐯𝐞𝐫𝐧𝐨 𝐅𝐞𝐝𝐞𝐫𝐚𝐥. 
• 𝐃𝐚𝐝𝐨𝐬 𝐏ú𝐛𝐥𝐢𝐜𝐨𝐬 𝐝𝐚 𝐂𝐢𝐝𝐚𝐝𝐞 𝐝𝐨 𝐑𝐢𝐨 𝐝𝐞 𝐉𝐚𝐧𝐞𝐢𝐫𝐨. 
• 𝐏𝐨𝐫𝐭𝐚𝐥 𝐝𝐚 𝐓𝐫𝐚𝐧𝐬𝐩𝐚𝐫ê𝐧𝐜𝐢𝐚 𝐝𝐨 𝐄𝐬𝐭𝐚𝐝𝐨 𝐝𝐞 𝐒𝐏. 
Métodos de Coleta de Dados 
Os métodos de coleta de dados são técnicas e procedimentos 
utilizados para a coleta de informações para fins de pesquisa. 
Esses métodos podem variar de simples pesquisas auto-relatadas 
até experimentos mais complexos, e podem envolver abordagens 
quantitativas ou qualitativas para a coleta de dados. 
Alguns métodos comuns de coleta de dados incluem pesquisas, 
entrevistas, observações, grupos focais, experimentos e análise de dados 
secundários. Os dados coletados por meio desses métodos podem então ser 
analisados e usados para apoiar ou refutar hipóteses de pesquisa e tirar 
conclusões sobre o assunto do estudo. 
Figura 12 – Métodos de Coleta de Dados. 
https://servicodados.ibge.gov.br/api/docs/agregados?versao=3
https://lnkd.in/da68Mws
https://lnkd.in/dB2XeDd5
https://lnkd.in/dugFpDAA
https://basedosdados.org/
https://www.data.rio/
https://lnkd.in/dRxMnnBZ
 
79 
 
 
Fonte: https://karinacarrasqueira.wordpress.com/2019/05/27/metodos-de-
coletas-de-dados/. 
 
https://karinacarrasqueira.wordpress.com/2019/05/27/metodos-de-coletas-de-dados/
https://karinacarrasqueira.wordpress.com/2019/05/27/metodos-de-coletas-de-dados/
 
80 
 
Importância de Métodos na Coleta de Dados 
Os métodos de coleta de dados desempenham um papel crucial no 
processo de pesquisa, pois determinam a qualidade e a precisão dos dados 
coletados. Aqui estão algumas importâncias importantes dos métodos de 
coleta de dados: 
• Determina a qualidade e a precisão dos dados coletados. 
• Garante que os dados sejam relevantes, válidos e confiáveis. 
• Ajuda a reduzir vieses e aumentar a representatividade da 
amostra. 
• Essencial para a tomada de decisões informadas e conclusões 
precisas. 
• Facilita o alcance dos objetivos da pesquisa, fornecendo 
dados precisos. 
• Apoia a validade e confiabilidade dos resultados da pesquisa. 
Com a coleta de dados, a empresa pode estabelecer os indicadores 
estratégicos (Key Performance Indicators) mais importantes para os 
negócios. Por meio deles, é possível avaliar métricas valiosas, como os leads 
alcançados em determinado período e o ticket médio da empresa. 
Existem várias maneiras de coletar dados, incluindo: 
• Coleta Primária: os dados são obtidos diretamente da fonte 
original, por meio de pesquisas, observações, entrevistas, 
experimentos etc. 
• Coleta Secundária: os dados são obtidos de fontes existentes, 
como literatura, bancos de dados, relatórios de empresas ou 
dados disponíveis publicamente. 
 
81 
 
 
 
82 
 
Figura 13 – Coleta Primária e Secundária. 
 
Fonte: https://www.questionpro.com/blog/data-collection-methods/. 
Dados Primários e Secundários 
Dados primários e dados secundários são dois tipos distintos de 
informações usadas em pesquisa e análise de dados. Eles diferem na forma 
como são coletados, sua origem e seu propósito. 
Coleta Primária 
A coleta primária de dados refere-se ao processo de obtenção de 
informações diretamente de fontes originais, por meio de métodos 
específicos de pesquisa, observação ou interação direta com os 
participantes do estudo. Esse tipo de coleta de dados é frequentemente 
usado em pesquisas acadêmicas, estudos de mercado, projetos de pesquisa 
científica, levantamentos e outras iniciativas que requerem informações 
específicas e personalizadas. Aqui estão os principais métodos de coleta 
primária de dados: 
Entrevistas: 
• Entrevistas estruturadas: perguntas predefinidas são feitas a 
todos os participantes da pesquisa, garantindo uniformidade 
nas respostas. 
https://www.questionpro.com/blog/data-collection-methods/
 
83 
 
• Entrevistas não estruturadas: as perguntas não são fixas, 
permitindo uma abordagem mais flexível e uma compreensão 
mais profunda das respostas. 
• Questionários: questionários são formulários escritos ou 
eletrônicos que contêm uma série de perguntas fechadas ou 
abertas. Eles são distribuídos aos participantes para serem 
preenchidos. 
• Observação Direta: os pesquisadores observam diretamente o 
comportamento, eventos ou fenômenos de interesse e 
registram suas observações. Isso pode ser feito de forma não 
participativa (os observadores não interagem com os 
participantes) ou participativa (os observadores interagem 
com os participantes). 
• Experimentos: os experimentos envolvem a manipulação 
controlada de variáveis independentes para observar os 
efeitos nas variáveis dependentes. Eles são usados 
principalmente em pesquisas científicas. 
• Pesquisas Online: utilização de formulários online, como os 
oferecidos por ferramentas como o Google Forms, para coletar 
dados de participantes remotamente. 
• Grupos Focais: os grupos focais são sessões de discussão em 
grupo nas quais um moderador guia a conversa para obter 
insights sobre um tópico específico. São frequentemente 
usados em pesquisas qualitativas. 
• Diários ou Registros: participantes mantêm diários ou 
registros pessoais para registrar eventos, experiências ou 
informações específicas ao longo do tempo. 
 
84 
 
• Medições Biométricas e de Sensores: utilização de sensores, 
como dispositivos de monitoramento de frequência cardíaca, 
dispositivos de rastreamento de movimento ou outros 
dispositivos biométricos para coletar dados em tempo real. 
• Amostragem de Áudio ou Vídeo: gravação de áudio ou vídeo 
de interações, entrevistas ou eventos para análise posterior. 
• Coleta de Amostras de Campo: coleta de amostras de solo, 
água, ar, alimentos etc., para análise em laboratório. 
• Métodos Etnográficos: imersão em um ambiente cultural ou 
social para observar e interagir com os participantes para 
obter uma compreensão profunda da cultura ou do contexto. 
• Testes de Usabilidade: avaliação da facilidade de uso e 
eficácia de produtos, sites ou aplicativos por meio da 
observação direta dos usuários durante o uso. 
É importante selecionar o método de coleta de dados primária que 
melhor se adapte aos objetivos da pesquisa, à natureza dos dados e ao 
contexto do estudo. Além disso, deve-se considerar a ética na coleta de 
dados, incluindo a obtenção de consentimento informado quando aplicável 
e seguir práticas de pesquisa rigorosas para garantir a qualidade e a 
confiabilidade dos dados coletados. 
Coleta Secundária 
A coleta secundária de dados envolve a obtenção de informações a 
partir de fontes já existentes, em oposição à coleta primária, na qual os 
dados são obtidos diretamente das fontes originais. Essa abordagem é 
frequentemente usada quando os dados necessários já foram coletados por 
outras organizações, pesquisadores ou fontes confiáveis. Aqui estão os 
principais aspectos da coleta secundária de dados: 
 
85 
 
Fontes de Dados Secundários: podem incluir literatura acadêmica, 
relatórios de pesquisa, bancos de dados públicos, registros governamentais, 
documentos de empresas, dados históricos, fontes de mídia e muito mais. 
Vantagens: 
• Economia de tempo e recursos: a coleta secundária muitas 
vezes é mais rápida e econômica do que a coleta primária. 
• Dados históricos: permite analisar tendências ao longo do 
tempo. 
• Dados de larga escala: dados secundários frequentemente 
cobrem grandes populações ou áreas geográficas. 
• Variedade de fontes: diversas fontes oferecem diferentes 
perspectivas e tipos de dados. 
Desvantagens: 
• Limitações de disponibilidade: dados específicos podem não 
estar disponíveis ou podem ser difíceis de encontrar. 
• Qualidade e confiabilidade: a qualidade dos dados 
secundários pode variar e nem sempre atender às 
necessidades do projeto. 
• Falta de controle: você não tem controle sobre como os dados 
foram coletados originalmente. 
Funcionabilidades: 
Validação e Verificação: ao usar dados secundários, é importantevalidar e verificar a qualidade dos dados sempre que possível. Isso pode 
envolver a revisão das metodologias de coleta original e a identificação de 
eventuais problemas. 
 
86 
 
Combinação de Dados: em muitos casos, é possível combinar dados 
de várias fontes secundárias para obter uma visão mais abrangente do 
tópico em estudo. 
Ética e Consentimento: certifique-se de que a utilização dos dados 
secundários esteja em conformidade com regulamentações de privacidade 
e ética. Em alguns casos, pode ser necessário obter permissão ou 
consentimento para usar os dados. 
Documentação: mantenha registros detalhados sobre a origem dos 
dados, as datas de coleta e quaisquer transformações ou manipulações 
realizadas durante a análise. 
Citações e Referências: dê crédito adequado às fontes originais ao 
utilizar dados secundários em seu trabalho. Isso é importante para a 
integridade acadêmica e a ética de pesquisa. 
A coleta secundária de dados é valiosa em muitos contextos, 
especialmente quando os dados necessários já existem ou quando a coleta 
primária seria impraticável ou muito dispendiosa. No entanto, é essencial 
avaliar a qualidade e a relevância dos dados secundários para garantir que 
eles atendam aos objetivos de pesquisa e análise. 
Características Dados Primários 
Origem: dados primários são informações coletadas diretamente de 
fontes originais e específicas para a finalidade da pesquisa em questão. Isso 
significa que os dados não existiam antes da pesquisa e são obtidos pela 
primeira vez. 
Processo de Coleta: a coleta de dados primários envolve a realização 
de pesquisas, entrevistas, questionários, experimentos, observações ou 
outras técnicas de coleta direta de informações. 
 
87 
 
Controle: os pesquisadores têm controle total sobre o processo de 
coleta, incluindo a escolha das perguntas, métodos de coleta e as condições 
em que os dados são coletados. 
Tempo e Custo: coletar dados primários pode ser demorado e 
custoso, pois envolve a criação de instrumentos de coleta, a realização de 
entrevistas ou pesquisas de campo e o processamento dos dados. 
Exemplos: respostas de um questionário feito especificamente para 
um estudo, resultados de experimentos de laboratório, dados de pesquisa 
de mercado conduzidos internamente. 
Características Dados Secundários 
Origem: dados secundários são informações que já foram coletadas, 
registradas e publicadas por outras fontes, não para um propósito específico 
de pesquisa, mas para outros fins, como relatórios, estatísticas, registros 
governamentais, pesquisas acadêmicas anteriores etc. 
Processo de Coleta: os dados secundários são coletados por 
terceiros para suas próprias finalidades, não sob controle direto dos 
pesquisadores que os estão usando. 
Controle: os pesquisadores têm menos controle sobre a qualidade e 
a precisão dos dados secundários, uma vez que eles não participaram 
diretamente do processo de coleta. 
Tempo e Custo: usar dados secundários geralmente é mais rápido e 
econômico do que coletar dados primários, pois os dados já estão 
disponíveis. 
Exemplos: relatórios governamentais, bancos de dados acadêmicos, 
estatísticas de vendas de empresas, registros históricos e literatura 
científica existente. 
 
88 
 
Em resumo, os dados primários são aqueles que você coleta 
diretamente para uma pesquisa específica, enquanto os dados secundários 
são informações já coletadas por outras fontes e disponíveis para uso em 
uma variedade de contextos. A escolha entre usar dados primários ou 
secundários depende dos objetivos da pesquisa, dos recursos disponíveis e 
da qualidade e disponibilidade dos dados. 
Coleta de Dados Coorporativa 
A coleta de dados em uma empresa pode ser tanto primária quanto 
secundária, dependendo do contexto e dos métodos utilizados. Vejam as 
diferenças: 
Coleta Primária de Dados em uma Empresa 
A coleta primária de dados envolve a obtenção de informações 
diretamente da fonte original por meio de métodos específicos de pesquisa, 
observação ou interação direta com os funcionários, clientes, processos 
internos ou outros elementos da empresa. 
Exemplos de coleta primária de dados em uma empresa podem 
incluir entrevistas com funcionários, pesquisas de satisfação do cliente 
realizadas pela empresa, observações diretas de processos de produção ou 
vendas, testes de produtos em desenvolvimento, entre outros. 
Esse tipo de coleta de dados é geralmente personalizado para 
atender às necessidades específicas da empresa e é frequentemente usado 
para obter informações específicas para tomada de decisões internas. 
Coleta Secundária de Dados em uma Empresa 
A coleta secundária de dados envolve a obtenção de informações a 
partir de fontes já existentes, que podem incluir dados internos ou externos 
à empresa. 
 
89 
 
Exemplos de coleta secundária de dados em uma empresa podem 
incluir o uso de relatórios financeiros ou de vendas da própria empresa, a 
análise de dados de mercado disponíveis publicamente, o uso de 
informações de pesquisa de mercado já coletadas por terceiros, entre 
outros. 
A coleta secundária é muitas vezes usada para complementar 
informações internas ou para contextualizar os dados internos com dados 
externos. 
Portanto, a coleta de dados em uma empresa pode incluir tanto a 
coleta primária quanto a secundária, dependendo dos objetivos da pesquisa 
ou análise, e dos recursos disponíveis. A escolha entre coleta primária e 
secundária dependerá das necessidades específicas da empresa e das 
fontes de dados relevantes para a pesquisa ou tomada de decisões. Em 
muitos casos, uma combinação de ambas as abordagens pode ser utilizada 
para obter uma visão completa e precisa. 
Escolha das Ferramentas 
A escolha das ferramentas para a coleta de dados depende do tipo 
de dados que você está coletando, do contexto do projeto e das preferências 
pessoais. Existem várias ferramentas disponíveis, desde soluções 
específicas para pesquisas online até aplicativos móveis e programas de 
coleta de dados em campo. Aqui estão algumas ferramentas indicadas para 
diferentes cenários de coleta de dados: 
Planilhas Eletrônicas (Excel, Google Sheets): são úteis para coletar 
dados tabulares e organizá-los. Elas podem ser usadas para criar formulários 
personalizados e registrar dados manualmente. 
Google Forms: é uma ferramenta gratuita que permite criar 
questionários online. É útil para pesquisas, feedback de clientes e coleta de 
dados estruturados. 
 
90 
 
SurveyMonkey: é uma plataforma popular para criação de pesquisas 
online. Oferece recursos avançados de criação de questionários e análise de 
dados. 
Redcap (Research Electronic Data Capture): é um sistema de coleta 
de dados voltado para pesquisas clínicas e epidemiológicas. É 
especialmente útil para projetos que requerem conformidade com 
regulamentações rigorosas. 
Qualtrics: é uma plataforma de pesquisa online que oferece uma 
ampla gama de recursos para coleta e análise de dados, incluindo pesquisas 
personalizáveis e análises avançadas. 
Open Data Kit (ODK): é uma plataforma de código aberto para coleta 
de dados em dispositivos móveis. É amplamente utilizado em pesquisas de 
campo e coleta de dados offline. 
Epi Info: é um software gratuito desenvolvido pelos centros de 
Controle e Prevenção de Doenças (CDC) dos EUA, voltado para a coleta e 
análise de dados em saúde pública. 
Mobile Data Collection Apps (e.g., Fulcrum, SurveyCTO): existem 
várias ferramentas de coleta de dados móveis, como Fulcrum e SurveyCTO, 
que permitem criar formulários personalizados e coletar dados em 
dispositivos móveis. 
Ferramentas de Anotação de Dados (e.g., Evernote, OneNote): para 
coleta de dados qualitativos ou anotações, aplicativos como Evernote e 
Microsoft OneNote podem ser úteis para registrar observações e 
informações em texto, áudio ou imagem. 
APIs e Integrações: em alguns casos, você pode usar APIs paraautomatizar a coleta de dados de fontes externas, como redes sociais, 
sensores ou sistemas de informação. 
 
91 
 
Programação Personalizada: em projetos mais complexos, pode ser 
necessário desenvolver um sistema personalizado de coleta de dados 
usando linguagens de programação como Python, R ou JavaScript. 
A escolha da ferramenta depende dos requisitos específicos do seu 
projeto, incluindo o tipo de dados que você está coletando, o público-alvo, a 
escalabilidade necessária e os recursos de análise de dados que você planeja 
utilizar. É importante considerar fatores como facilidade de uso, custo e 
suporte técnico ao selecionar a ferramenta mais adequada para a sua 
situação. 
Coleta x Ingestão de Dados 
A coleta de dados é o processo de coletar dados brutos de várias 
fontes e compilá-los em um local central para análise. Normalmente é a 
primeira etapa no processo de análise de dados. 
Principais diferenças: 
A coleta de dados envolve a coleta de dados brutos de várias fontes, 
enquanto a ingestão de dados envolve o processamento e a preparação de 
dados para análise. É tipicamente um processo único, enquanto a ingestão 
de dados pode ser um processo contínuo. 
A coleta de dados pode envolver a entrada manual de dados, 
enquanto a ingestão de dados é tipicamente um processo automatizado. 
Pode ser um processo demorado e que consome muitos recursos, enquanto 
a ingestão de dados pode ser mais rápida e eficiente. 
A coleta de dados geralmente é feita de forma descentralizada, 
enquanto a ingestão de dados é tipicamente centralizada. 
Boas Práticas na Coleta de Dados 
A coleta de dados é um estágio crítico no processo de análise e 
pesquisa, pois a qualidade dos dados coletados afeta diretamente a validade 
 
92 
 
e a confiabilidade das conclusões e decisões posteriores. Portanto, é 
importante planejar, executar e documentar o processo de coleta de dados 
de forma cuidadosa e ética. 
Fonte de Dados: refere-se ao local ou à origem de onde os dados são 
obtidos. As fontes de dados podem incluir bancos de dados, pesquisas de 
campo, sensores, registros de transações, fontes públicas na web, redes 
sociais, entre outros. 
Métodos de Coleta de Dados 
Existem várias maneiras de coletar dados, incluindo: 
• Coleta Primária: os dados são obtidos diretamente da fonte 
original, por meio de pesquisas, observações, entrevistas, 
experimentos etc. 
• Coleta Secundária: os dados são obtidos de fontes existentes, 
como literatura, bancos de dados, relatórios de empresas ou 
dados disponíveis publicamente. 
Amostragem: quando é inviável ou impraticável coletar dados de 
toda a população, é comum usar amostragem. Isso envolve a seleção de uma 
parte representativa da população para análise. Os métodos de amostragem 
incluem amostragem aleatória simples, estratificada, por conglomerados, 
entre outros. 
Protocolos de Coleta de Dados: são procedimentos e diretrizes 
definidos para garantir que a coleta de dados seja consistente, confiável e 
precisa. Isso inclui a padronização de questionários, métodos de registro e 
treinamento de pesquisadores. 
Instrumentos de Coleta de Dados: são as ferramentas ou 
questionários usados para coletar informações. Esses instrumentos são 
 
93 
 
projetados com cuidado para garantir que as perguntas sejam claras e 
relevantes para os objetivos da coleta de dados. 
Validação de Dados: é o processo de verificação da qualidade e 
integridade dos dados coletados. Isso envolve a detecção e correção de 
erros, a identificação de outliers e a garantia de que os dados estejam 
completos e consistentes. 
Ética na Coleta de Dados: é fundamental respeitar a privacidade e os 
direitos das pessoas envolvidas na coleta de dados. Isso inclui obter 
consentimento quando necessário e garantir que os dados sejam usados de 
maneira ética e de acordo com regulamentações e leis aplicáveis. 
Gerenciamento de Dados: envolve a organização, armazenamento e 
documentação adequados dos dados coletados para garantir sua 
acessibilidade e rastreabilidade ao longo do tempo. 
Segurança de Dados: a proteção dos dados coletados contra acesso 
não autorizado ou perda é crucial. Medidas de segurança, como criptografia 
e controle de acesso, são implementadas para proteger a integridade e a 
confidencialidade dos dados. 
Documentação e Metadados: a documentação detalhada sobre a 
coleta de dados, incluindo metadados que descrevem a estrutura e o 
significado dos dados, é fundamental para garantir a compreensão e o uso 
adequado dos dados. 
Validação de Dados: implemente procedimentos de validação para 
verificar a qualidade e a precisão dos dados coletados. Isso inclui a detecção 
de erros e outliers. 
Anonimização e Privacidade: proteja a privacidade dos participantes, 
especialmente quando se trata de dados pessoais. Anonimize os dados, se 
possível, e siga regulamentações de privacidade. 
 
94 
 
Segurança de Dados: mantenha a segurança dos dados coletados, 
garantindo que apenas pessoas autorizadas tenham acesso a eles. Isso 
pode incluir medidas como criptografia e armazenamento seguro. 
Documentação Adequada: mantenha registros detalhados de todo o 
processo de coleta, incluindo datas, locais, procedimentos e quaisquer 
desafios ou problemas encontrados. 
Metadados: documente metadados que descrevam a estrutura e o 
significado dos dados, facilitando a interpretação e o uso futuro. 
Consistência Temporal: mantenha a consistência temporal na coleta 
de dados, garantindo que os dados sejam coletados em momentos 
relevantes e consistentes ao longo do tempo. 
Backup de Dados: faça cópias de segurança regulares dos dados 
coletados para evitar perda acidental. 
Comunicação Transparente: comunique-se de forma transparente 
sobre o progresso da coleta de dados e qualquer problema que possa surgir 
com as partes interessadas. 
Ética: garanta que a coleta de dados seja realizada de maneira ética 
e em conformidade com as leis e regulamentações aplicáveis. 
Revisão Ética: se necessário, submeta o projeto de coleta de dados a 
uma revisão ética por um comitê de ética, especialmente em pesquisas 
envolvendo seres humanos. 
Reavaliação Regular: avalie periodicamente o processo de coleta de 
dados para garantir que ele continue alinhado com os objetivos e 
necessidades do projeto. 
Para garantir que os dados sejam coletados de maneira eficaz, 
confiável e ética, é importante seguir boas práticas: 
 
95 
 
1. Defina Objetivos Claros: tenha uma compreensão clara dos 
objetivos da coleta de dados e do que você deseja alcançar. Isso 
orientará o processo de coleta. 
2. Planejamento Adequado: planeje detalhadamente a coleta de 
dados, incluindo a seleção de métodos, amostragem, protocolos 
de coleta e cronograma. 
3. Obtenha Consentimento e Autorização: se a coleta de dados 
envolver pessoas, obtenha o consentimento informado e 
autorização quando necessário. Explique claramente o propósito 
da coleta e como os dados serão usados. 
4. Padronização: Utilize instrumentos de coleta de dados 
padronizados, como questionários e formulários, para garantir 
que as informações sejam consistentes e comparáveis. 
5. Treinamento: certifique-se de que as pessoas envolvidas na 
coleta de dados estejam devidamente treinadas para entender os 
procedimentos, registrar dados corretamente e seguir 
protocolos. 
6. Piloto: realize um piloto da coleta de dados em uma pequena 
escala antes de coletar os dados completos para identificar 
possíveis problemas e fazer ajustes. 
Dados Anonimizados 
É o dado relativo ao titular que não possa ser identificado, 
considerando a utilização de meios técnicos razoáveis e disponíveis na 
ocasião de seu tratamento. 
 
 
96 
 
Dados Identificáveis e Pseudonimizados 
Os dados identificáveis são aqueles que, sozinhos, não conseguem 
identificar o titular, mas somados a outras informações torna a ação 
possível. 
Isso significa dizer que a soma de dadosidentificáveis, como o 
número do seu cartão de crédito (que você adicionou em uma loja on-line), 
seu CPF (usado, às vezes, em notas fiscais), o nome da empresa para a qual 
você trabalha (que você adicionou na hora de um cadastro), entre outros, se 
juntos, podem identificar você. Assim sendo, com a nova lei, também estão 
sob sua proteção. 
Por sua vez, segundo o descrito em lei, a pseudonimização é “o 
tratamento por meio do qual um dado perde a possibilidade de associação, 
direta ou indireta, a um indivíduo, senão pelo uso de informação adicional 
mantida separadamente pelo controlador em ambiente controlado e 
seguro”. 
Tanto a anonimização quanto a pseudonimização são técnicas de 
mascaramento de dados, no entanto, a diferença é que um pode ter seu 
processo de reversão possível, oferecendo ao controlador informações 
adicionais na hora do tratamento de dados. 
 
 
 
 
 
4 
 
98 
 
Capítulo 4. Ingestão de Dados 
A ingestão de dados é o processo de coletar, importar ou receber 
dados de diversas fontes e convertê-los em um formato que possa ser 
armazenado e processado em sistemas de gerenciamento de dados. Esse 
processo é fundamental em muitas organizações, especialmente aquelas 
que lidam com grandes volumes de informações de diferentes fontes, como 
dados de clientes, registros de transações, sensores, mídia social, entre 
outros. 
A ingestão de dados é um dos primeiros passos na análise de dados 
e na tomada de decisões baseada em dados. A ingestão de dados é o 
processo de obtenção e importação de dados para uso imediato ou 
armazenamento em um banco de dados. Ingerir algo é como absorver algo. 
A ingestão de dados é um termo amplo que se refere às muitas 
maneiras pelas quais os dados são originados e manipulados para uso ou 
armazenamento. É o processo de coletar dados de uma variedade de fontes 
e prepará-los para uma aplicação que exija que eles estejam em um 
determinado formato ou de um certo nível de qualidade. Na ingestão de 
dados, as fontes de dados normalmente não estão associadas ao destino. 
Coleta ou Ingestão de Dados 
Ingestão e coleta não são a mesma coisa, embora estejam 
relacionadas no contexto da gestão de dados. Esses termos têm significados 
ligeiramente diferentes: 
Coleta de Dados (Data Collection): a coleta de dados refere-se ao 
processo de obtenção de informações de fontes específicas, sejam elas 
fontes primárias (dados obtidos diretamente de fontes originais, como 
pesquisas ou observações) ou fontes secundárias (dados já existentes em 
 
99 
 
bancos de dados, documentos, relatórios etc.). A coleta de dados envolve a 
obtenção inicial das informações. 
Ingestão de Dados (Data Ingestion): a ingestão de dados é uma 
etapa subsequente à coleta, mas pode envolver a coleta. Refere-se ao 
processo de transferência e preparação dos dados coletados para serem 
armazenados ou processados em um sistema de gerenciamento de dados 
ou em um repositório de dados. Isso envolve a transformação dos dados 
brutos em um formato adequado para análise, armazenamento ou 
processamento posterior. 
Ou seja, a coleta de dados está relacionada à obtenção inicial das 
informações, enquanto a ingestão de dados envolve o processo de 
preparação, limpeza, transformação e carga dos dados em um sistema ou 
banco de dados para posterior análise ou uso. Ambos os processos são vitais 
no gerenciamento de dados e na análise de dados, pois garantem que as 
informações coletadas sejam utilizáveis e significativas. 
Ingestão de Dados 
A ingestão de dados é o processo de pegar dados de várias fontes e 
prepará-los para análise. Isso pode envolver transformar os dados, limpá-los 
e estruturá-los para que possam ser facilmente analisados. 
A ingestão de dados envolve o processamento e a preparação dos 
dados para análise, enquanto a coleta de dados envolve a coleta de dados 
brutos. 
A ingestão de dados é tipicamente um processo contínuo, enquanto 
a coleta de dados é tipicamente um processo único. 
A ingestão de dados é tipicamente automatizada, enquanto a coleta 
de dados pode envolver a entrada manual de dados. 
 
100 
 
A ingestão de dados é tipicamente mais rápida e eficiente do que a 
coleta de dados. 
A ingestão de dados é tipicamente centralizada, enquanto a coleta 
de dados pode ser feita de forma descentralizada. 
Ingestão de Dados X ETL 
A ingestão de dados e o ETL são dois processos muito diferentes. A 
ingestão de dados está importando dados para um banco de dados ou outro 
mecanismo de armazenamento, enquanto o ETL está extraindo, 
transformando e carregando. 
A diferença entre os dois pode ser confusa devido aos seus nomes 
semelhantes e ao fato de que muitas vezes coincidem. 
A principal diferença entre ingestão de dados e ETL é o que cada um 
faz por você. A ingestão de dados é um processo que envolve a cópia de 
dados de uma fonte externa (como um banco de dados) para outro local de 
armazenamento (como um banco de dados). Nesse caso, normalmente é 
feito sem alterações nos dados. 
Por exemplo, se você tiver um bucket do Amazon S3 contendo 
alguns arquivos que precisam ser importados para o banco de dados, a 
ingestão de dados será necessária para mover esses arquivos para o local do 
banco de dados. 
ETL significa Extract - Transform – Load: é um processo que envolve 
pegar dados de um sistema e transformá-los para que possam ser 
carregados em outro sistema para uso lá. Nesse caso, em vez de apenas 
copiar dados de um local para outro sem fazer alterações. 
Ingestão de Dados X Integração de Dados 
A ingestão e a integração de dados descrevem a movimentação de 
dados de um sistema para outro. A ingestão de dados é o processo de colocar 
 
101 
 
dados em um banco de dados, enquanto a integração de dados é extrair 
esses mesmos dados de um banco de dados e colocá-los de volta em outro 
sistema. 
A integração de dados geralmente é necessária quando você deseja 
usar o produto de uma empresa com o produto de outra empresa ou se 
deseja combinar seus processos de negócios internos com os de uma 
organização externa. 
A diferença entre os dois termos decorre de suas definições: 
1) Ingestão de dados – O ato ou processo de introduzir dados em um 
banco de dados ou outro repositório de armazenamento. Geralmente, isso 
envolve o uso de uma ferramenta ETL para mover informações de um 
sistema de origem (como o Salesforce) para outro repositório, como SQL 
Server ou Oracle. 
2) Integração de dados – O processo de combinar vários conjuntos 
de dados em um conjunto de dados ou modelo de dados que pode ser usado 
por aplicativos, particularmente aqueles de diferentes fornecedores, como 
Salesforce e Microsoft Dynamics CRM. 
Tipos de Ingestão de Dados 
A ingestão de dados é coletar e preparar dados de várias fontes em 
um Data Warehouse. Envolve coletar, limpar, transformar e integrar dados 
de fontes diferentes em um único sistema de análise. 
Existem dois tipos principais de ingestão de dados: 
• Real-time ou Streaming de dados: a ingestão em tempo real 
envolve o streaming de dados para um Data Lake ou Data 
Warehouse em tempo real, muitas vezes usando sistemas 
baseados em nuvem que podem ingerir os dados 
 
102 
 
rapidamente, armazená-los na nuvem e, em seguida, liberá-
los para os usuários quase imediatamente. 
• Batch ou lote: a ingestão em lote envolve a coleta de grandes 
quantidades de dados brutos de várias fontes em um só lugar 
e, em seguida, processá-los mais tarde. Esse tipo de ingestão 
é usado quando você precisa solicitar uma grande quantidade 
de informações antes de processá-las de uma só vez. 
 
 
103 
 
Figura 14 –Tipos de Ingestão de Dados. 
 
Fonte: https://firsteigen.com/blog/10-data-ingestion-tools-to-fortify-your-
data-strategy/. 
CDC – Change Data Capture 
CDC (Change Data Capture) é uma técnica que permite rastrear e 
capturar as mudanças nos dados de um sistema de origem e replicá-las em 
temporeal ou em lotes para um sistema de destino. Isso é útil para manter 
os dados sincronizados entre sistemas, especialmente em cenários em que 
a consistência e a atualização em tempo real são importantes. Veja as 
diferenças entre CDC em streaming e CDC em lote. 
A implementação do Change Data Capture (CDC) pode variar 
dependendo do sistema de origem e destino que você está usando. No 
entanto, aqui estão os passos gerais que você pode seguir para configurar o 
CDC em um sistema típico: 
Passo 1: Avaliação dos Requisitos 
• Antes de começar, é importante entender os requisitos 
específicos do seu cenário, como: 
– Identificar o sistema de origem de onde você deseja capturar 
as mudanças nos dados. 
– Determinar o sistema de destino para onde você deseja 
replicar as mudanças. 
https://firsteigen.com/blog/10-data-ingestion-tools-to-fortify-your-data-strategy/
https://firsteigen.com/blog/10-data-ingestion-tools-to-fortify-your-data-strategy/
 
104 
 
– Definir a frequência com que deseja capturar as mudanças 
(tempo real ou em lote). 
– Especificar quais tabelas ou fontes de dados você deseja 
rastrear. 
– Decidir se você precisa realizar transformações nos dados 
antes de replicá-los. 
Passo 2: Seleção de Ferramentas e Tecnologias 
• Escolha as ferramentas e tecnologias apropriadas para 
implementar o CDC com base nos requisitos do seu projeto. 
Alguns sistemas de banco de dados e plataformas de 
integração oferecem recursos nativos de CDC, enquanto 
outros podem exigir ferramentas adicionais de terceiros. 
Exemplos de tecnologias de CDC incluem: 
– Apache Kafka: uma plataforma de streaming de alto 
desempenho que é frequentemente usada para implementar 
CDC em streaming. 
– Change Data Capture em Bancos de Dados: muitos sistemas 
de gerenciamento de bancos de dados, como Oracle, SQL 
Server e PostgreSQL, oferecem recursos nativos de CDC. 
– Ferramentas de ETL: muitas ferramentas de ETL (Extração, 
Transformação e Carga), como Talend, Informatica e Apache 
NiFi, incluem recursos de CDC. 
Passo 3: Configuração do CDC 
Configurar o CDC no sistema de origem, seguindo as orientações 
específicas da tecnologia ou ferramenta que você escolheu. Isso pode 
envolver a criação de logs de transações, a ativação de recursos de 
 
105 
 
rastreamento de mudanças e a configuração de pontos de extremidade de 
destino para enviar as mudanças capturadas. 
Passo 4: Processamento das Mudanças 
Dependendo da tecnologia ou ferramenta que você está usando, 
você pode precisar criar scripts ou processos para processar as mudanças 
capturadas e transformá-las, se necessário, antes de enviá-las para o 
sistema de destino. 
Passo 5: Replicação para o Sistema de Destino 
Configure o sistema de destino para receber as mudanças replicadas 
do sistema de origem. Isso pode envolver a configuração de conexões de 
rede, pontos de extremidade de destino e garantir que o sistema de destino 
esteja pronto para processar as mudanças recebidas. 
Passo 6: Monitoramento e Manutenção 
Implemente monitoramento e manutenção contínua para garantir 
que o CDC esteja funcionando conforme o esperado. Isso inclui o 
acompanhamento de métricas de desempenho, detecção e tratamento de 
erros e atualizações regulares conforme necessário. 
Os detalhes específicos da implementação do CDC podem variar 
significativamente com base nas tecnologias e sistemas específicos que 
você está usando. Portanto, é importante consultar a documentação 
relevante da tecnologia e, se possível, contar com o suporte de especialistas 
em CDC ou integração de dados para garantir uma implementação bem-
sucedida. 
Ferramentas de Ingestão de Dados – Streaming 
A ingestão de dados em streaming é um processo de coleta e 
processamento contínuo de dados à medida que são gerados, permitindo 
que as organizações recebam e analisem informações em tempo real. 
 
106 
 
Esse tipo de ingestão é crucial em cenários onde a velocidade de 
processamento e análise dos dados é fundamental, como em aplicações de 
análise de tempo real, detecção de fraudes, monitoramento de sistemas e 
redes, entre outros. 
A ingestão de dados em streaming é fundamental em cenários onde 
a tomada de decisões imediatas com base em dados em tempo real é 
necessária. Essa abordagem é amplamente adotada em setores como 
finanças, telecomunicações, Internet das Coisas (IoT), mídia social, entre 
outros, onde a velocidade e a precisão dos dados são críticas. 
As fontes de dados em streaming podem incluir feeds de sensores, 
dispositivos IoT (Internet das Coisas), logs de servidores, redes sociais, 
transações financeiras em tempo real e muito mais. Os dados são gerados e 
transmitidos continuamente. 
A principal característica da ingestão de dados em streaming é o 
processamento em tempo real ou quase em tempo real. Isso significa que 
os dados são consumidos e processados assim que são disponibilizados, 
geralmente em milissegundos ou segundos. 
Existem várias ferramentas e tecnologias desenvolvidas para 
facilitar a ingestão de dados em streaming. Exemplos incluem Apache Kafka, 
Apache Flink, Apache Storm, Apache Beam, AWS Kinesis, Google Cloud 
Dataflow e Microsoft Azure Stream Analytics. 
Além de simplesmente coletar dados em streaming, muitas vezes é 
necessário realizar transformações e análises em tempo real. Isso pode 
incluir agregações, filtragens, enriquecimento de dados e detecção de 
padrões. 
Uma das vantagens da ingestão de dados em streaming é a 
capacidade de escalar horizontalmente para lidar com volumes crescentes 
 
107 
 
de dados em tempo real. Isso é especialmente importante para empresas 
que têm picos de atividade. 
Os sistemas de ingestão de dados em streaming devem ser 
projetados para serem tolerantes a falhas, garantindo que os dados não 
sejam perdidos mesmo em situações de falha de hardware ou software. 
Embora a ingestão de dados em streaming seja focada em 
processamento em tempo real, muitas vezes os dados também são 
armazenados para análises posteriores. Isso pode ser feito em Data Lakes, 
Data Warehouses ou outros sistemas de armazenamento de dados. 
 
 
108 
 
Benefícios da Ingestão de Dados 
Em Big Data, a ingestão de dados é uma parte crítica. É o processo 
pelo qual você obtém seus dados em seu cluster Hadoop e pode ser um 
processo complicado e desafiador. 
Mas há muitos benefícios a serem obtidos com a ingestão de seus 
dados, incluindo: 
• Precisão: você poderá garantir que todas as informações com 
as quais está trabalhando sejam precisas e confiáveis. 
• Flexibilidade: depois de ingerir os dados, será mais fácil 
acessar, manipular e analisar do que se você estivesse apenas 
usando-os em forma bruta. 
• Velocidade: se você estiver usando o Hadoop para fins de 
análise ou aprendizado de máquina, ter todos os seus dados 
em um só lugar acelerará significativamente os tempos de 
processamento. 
Boas Práticas na Ingestão de Dados 
Validação de Dados: implemente procedimentos de validação para 
verificar a qualidade e a precisão dos dados coletados. Isso inclui a detecção 
de erros e outliers. 
Anonimização e Privacidade: proteja a privacidade dos participantes, 
especialmente quando se trata de dados pessoais. Anonimize os dados, se 
possível, e siga regulamentações de privacidade. 
Segurança de Dados: mantenha a segurança dos dados coletados, 
garantindo que apenas pessoas autorizadas tenham acesso a eles. Isso 
pode incluir medidas como criptografia e armazenamento seguro. 
 
109 
 
Documentação Adequada: mantenha registros detalhados de todo o 
processo de coleta, incluindo datas, locais, procedimentos e quaisquer 
desafios ou problemas encontrados. 
Metadados: documente metadados que descrevam a estrutura e o 
significado dos dados, facilitando a interpretação e o uso futuro. 
Consistência Temporal: mantenha a consistência temporal na coleta 
de dados, garantindo que os dados sejam coletados em momentosrelevantes e consistentes ao longo do tempo. 
Backup de Dados: faça cópias de segurança regulares dos dados 
coletados para evitar perda acidental. 
Comunicação Transparente: comunique-se de forma transparente 
sobre o progresso da coleta de dados e qualquer problema que possa surgir 
com as partes interessadas. 
Ética: garanta que a coleta de dados seja realizada de maneira ética 
e em conformidade com as leis e regulamentações aplicáveis. 
Revisão Ética: se necessário, submeta o projeto de coleta de dados a 
uma revisão ética por um comitê de ética, especialmente em pesquisas 
envolvendo seres humanos. 
Reavaliação Regular: avalie periodicamente o processo de coleta de 
dados para garantir que ele continue alinhado com os objetivos e 
necessidades do projeto. 
Práticas Recomendadas 
Um pipeline de dados bem projetado e implementado pode levar 
tempo e esforço. É preciso mais para coletar dados. Você precisa garantir 
que está coletando de uma maneira que facilite o uso para sua equipe mais 
tarde. Aqui estão algumas práticas recomendadas para coletar dados: 
 
110 
 
Colete apenas os dados necessários em cada etapa do processo. 
Isso economizará tempo e dinheiro, porque você não terá que reprocessar 
nada mais tarde. 
Certifique-se de que cada parte de dados coletados tenha um 
carimbo de data/hora ou identificador exclusivo associado para que possa 
ser correspondido com outras partes das informações posteriormente em 
seu processo de análise. Isso também ajudará a garantir a precisão em seus 
resultados finais. 
Crie um formato bem estruturado para cada informação para que 
qualquer pessoa que precise de acesso possa encontrar facilmente o que 
está procurando mais tarde. 
 
 
 
 
5 
 
112 
 
Capítulo 5. Extração de Dados 
Extração de Dados x Ingestão de Dados 
A extração de dados e a ingestão de dados são dois processos 
fundamentais no campo da gestão de dados e análise de dados, e cada um 
desempenha um papel importante em diferentes fases do ciclo de vida dos 
dados. 
A extração de dados refere-se ao processo de coletar dados de 
diversas fontes, que podem ser estruturadas ou não estruturadas. Isso 
envolve a obtenção de informações de sistemas de banco de dados, 
arquivos, aplicativos, websites, sensores, redes sociais e muito mais. 
Os dados extraídos podem ser brutos ou pré-processados, 
dependendo das necessidades. É comum que a extração de dados envolva a 
transformação inicial para limpar, formatar ou estruturar os dados de acordo 
com os requisitos de análise. 
Ferramentas de ETL (Extração, Transformação e Carregamento) são 
frequentemente usadas para automatizar e facilitar o processo de extração 
de dados. 
A ingestão de dados é o processo de receber, validar e carregar os 
dados extraídos em um sistema de armazenamento de dados, como um Data 
Warehouse, Data Lake ou outra plataforma de análise. 
Durante a ingestão de dados, os dados podem passar por várias 
etapas de validação e transformação antes de serem armazenados. Isso 
garante a qualidade e a consistência dos dados que serão usados para 
análise posterior. 
 
113 
 
A ingestão de dados pode ser realizada em lote (batch) ou em tempo 
real (streaming), dependendo da necessidade e da natureza dos dados. 
A Ingestão de dados não é necessariamente uma transformação de 
dados, mas sim o processo de recebimento e armazenamento de dados em 
um sistema de armazenamento centralizado. A ingestão de dados lida 
principalmente com a transferência e acomodação de dados brutos ou 
semiprocessados em um local onde eles possam ser posteriormente 
processados, analisados ou consultados. 
A transformação de dados geralmente ocorre após a ingestão, como 
parte do processo de preparação de dados para análise, e durante a mesma 
podem ocorrer várias operações, como limpeza, normalização, agregação, 
enriquecimento e estruturação dos dados para torná-los mais adequados 
para análise ou relatórios. 
Ingestão de dados é especialmente útil quando se trabalha com 
grandes volumes de dados, dados de streaming em tempo real ou quando é 
necessário armazenar dados para análises futuras. Portanto, a escolha entre 
extração e ingestão de dados depende mais de onde os dados estão 
localizados inicialmente e para onde você deseja movê-los. 
Independentemente da estrutura dos dados, ambas as abordagens podem 
ser aplicadas conforme necessário para atender aos objetivos de gestão e 
análise de dados. 
ETL 
Na fase de integração dos dados executamos o ETL. Essa sigla 
significa Extract, Transform and Load, ou seja, Extração, Transformação e 
Carga. 
Comumente utilizado para construir um Data Warehouse, nesse 
processo os dados são retirados (extraídos) de um ou mais sistemas-fonte 
 
114 
 
ou origens, convertidos (transformados) em um formato que possa ser 
analisado, e armazenados (carregados) em um armazém ou outro sistema. 
Conforme Ralph Kimball, “Um sistema ETL projetado 
adequadamente extrai dados dos sistemas de origem, aplica padrões de 
qualidade e consistência de dados, alinha os dados para que fontes 
separadas possam ser usadas em conjunto e, finalmente, entrega dados em 
um formato pronto para apresentação, para que os desenvolvedores possam 
criar aplicativos e os usuários finais possam tomar decisões”. A extração e 
carga são obrigatórias para o processo, sendo a transformação/limpeza 
opcional, mas que são boas práticas, tendo em vista que os dados já foram 
encaminhados para o sistema de destino. É considerada uma das fases mais 
críticas do Data Warehouse e/ou Data Mart. 
Os projetos de Data Warehouse consolidam dados de diferentes 
fontes. A maioria dessas fontes tende a ser bancos de dados relacionais ou 
arquivo de texto (texto plano), mas podem existir outras fontes. Uma 
aplicação ETL tem que ser capaz de se comunicar com as bases de dados e 
ler diversos formatos de arquivos utilizados por toda a organização. Essa 
pode ser uma tarefa não trivial, e muitas fontes de dados podem não ser 
acessadas com facilidade. 
Extração 
A extração é a primeira etapa de um processo de ETL, sendo a coleta 
de dados dos sistemas de origem (Data Sources ou sistemas operacionais) 
extraindo-os e transferindo-os para o ambiente de DW, onde o sistema ETL 
pode operar independente dos sistemas de origem. Um processo ETL precisa 
ser capaz de se comunicar com bases de dados, visto que os projetos de Data 
Warehouse consolidam dados de diferentes fontes, e ler diversos formatos 
de arquivos utilizados por toda a organização. 
O primeiro passo é definir as fontes de extração e os dados podem 
vir das mais diversas fontes, por exemplo: Sistemas de gestão (SIG, ERP, 
 
115 
 
CRM etc.), SGBD's (Oracle, SQLSERVER, DB2 etc.), arquivos como planilhas 
do Excel e documentos de texto. 
A etapa de extração é a fase onde os dados são extraídos dos OLTPs 
(Online Transaction Processing) e conduzidos para a staging area (área 
temporária), onde são convertidos para um único formato. A conversão se 
faz necessária devido a heterogeneidade existente nas informações 
oriundas desses sistemas, sendo essencial a conformação prévia para o 
tratamento adequado. 
 
 
116 
 
Figura 15 – Etapa de Extração de Dados 
 
Fonte: https://canaltech.com.br/. 
A coleta de dados é a primeira etapa em um pipeline de dados. 
Envolve a obtenção de informações de diferentes fontes, sejam elas fontes 
internas ou externas à organização. A coleta pode ser realizada de várias 
maneiras, dependendo das fontes de dados, e pode incluir a utilização de 
pesquisas, formulários, sensores, aplicativos, APIs, logs, entre outros. 
Esta etapa é focada na obtenção inicial de dados a partir de suas 
fontes originais. Os dados coletados podem ser não estruturados, 
semiestruturados ou estruturados, e frequentemente estão em formatos 
diferentes. 
A extração de dados é a etapa subsequente à coleta de dados. Ela se 
concentra na identificação, recuperaçãoe movimentação dos dados brutos 
das fontes coletadas para um local centralizado, geralmente chamado de 
repositório de dados. Essa etapa é importante para tornar os dados 
disponíveis e prontos para análise e uso futuro. 
A extração envolve, muitas vezes, processos técnicos, como 
consultas a bancos de dados, uso de APIs para obter informações de 
sistemas externos, raspagem da web para coletar dados de sites, 
transformação de dados, conversão de formatos e muito mais. 
https://canaltech.com.br/
 
117 
 
Durante a extração, os dados podem ser limpos, formatados e 
preparados para corresponder ao esquema de armazenamento ou à 
estrutura desejada no repositório de dados. 
A coleta de dados está relacionada à obtenção inicial das 
informações de várias fontes, enquanto a extração de dados se concentra 
em movimentar e preparar esses dados para o armazenamento e análise 
posteriores. Ambas as etapas são essenciais em um pipeline de dados para 
garantir que as informações coletadas estejam prontas e disponíveis para 
serem utilizadas de forma eficaz em análises, relatórios ou outras atividades 
de processamento de dados. 
Conceitos-chave 
A extração de dados é um processo no qual informações são 
identificadas, recuperadas e movimentadas de fontes originais para um local 
centralizado ou repositório, onde podem ser processadas, armazenadas e 
analisadas. Aqui estão alguns conceitos-chave relacionados à extração de 
dados: 
– Fontes de Dados: são os locais ou sistemas de onde os dados 
são obtidos. Isso pode incluir bancos de dados, sistemas de 
registro, aplicativos, arquivos, APIs, logs, fontes da web e 
muito mais. 
– Dados Brutos: são as informações não processadas ou não 
transformadas que são extraídas das fontes originais. Esses 
dados podem ser não estruturados, semiestruturados ou 
estruturados, dependendo da fonte. 
– Extração de Dados ETL: (Extração, Transformação e Carga) é 
um processo que inclui a extração de dados (E), a 
transformação de dados (T) para limpeza e preparação, e a 
carga (L) dos dados em um repositório central. 
 
118 
 
– Consultas SQL: Em muitos casos, a extração de dados de 
bancos de dados envolve o uso de consultas SQL (Structured 
Query Language) para recuperar informações específicas de 
tabelas ou bancos de dados. 
– Transformação de Dados: é uma etapa comum durante a 
extração, onde os dados brutos podem ser limpos, 
formatados, agregados, enriquecidos ou transformados de 
outras maneiras para se adequarem aos requisitos do 
projeto. 
– Movimentação de Dados: envolve transferir os dados 
extraídos de suas fontes originais para um local centralizado, 
como um Data Lake, Data Warehouse ou outro repositório de 
dados. 
– Agendamento e Automatização: a extração de dados pode 
ser agendada e automatizada para ocorrer em intervalos 
regulares, garantindo que os dados estejam sempre 
atualizados no repositório. 
– Segurança e Privacidade: a segurança dos dados é crítica 
durante a extração para proteger informações sensíveis. 
Isso pode incluir criptografia, autenticação, autorização e 
outras medidas de segurança. 
– Monitoramento e Registro: o monitoramento contínuo do 
processo de extração é importante para identificar 
problemas, falhas ou anomalias. É útil registrar informações 
sobre a extração para fins de auditoria e solução de 
problemas. 
– Integração com o Fluxo de Dados: os dados extraídos são 
frequentemente integrados ao fluxo de dados, onde podem 
 
119 
 
ser transformados, enriquecidos e direcionados para fins 
específicos, como análise ou geração de relatórios. 
– Tratamento de Falhas: é importante considerar como lidar 
com possíveis falhas durante o processo de extração, como 
indisponibilidade de fontes de dados ou problemas de 
conectividade. 
 
 
120 
 
Crawling 
Em toda a história, nunca produzimos e compartilhamos tanta 
informação. Na era Big Data, a cada segundo circulam milhões de dados em 
rede que, em sua maioria, encontram-se não estruturados, isto é, sem uma 
lógica de organização. Por si só, dados isolados apresentam pouca ou 
nenhuma relevância, para que possam adquirir significado, um dos 
principais e mais complexos desafios está relacionado à pesquisa, 
organização e análise de dados em escala. Nesse cenário, surgem os 
crawlers, robôs automatizados para fazer uma varredura e são capazes de 
agregar, classificar e entregar dados já estruturados. Principal recurso para 
os motores de busca na internet, esse tipo de automação também pode ser 
aplicado a estratégias de data analysis em empresas. 
Figura 16 – Web Crawler x Web Scraping. 
 
Fonte: http://prowebscraping.com/web-scraping-vs-web-crawling/. 
Crawlers, também conhecidos como web crawlers, spiders, bots ou 
rastreadores da web, são programas de software que são usados para 
navegar pela World Wide Web de forma automatizada e sistemática. A 
principal função de um crawler é coletar informações de páginas da web, 
http://prowebscraping.com/web-scraping-vs-web-crawling/
 
121 
 
indexá-las e, muitas vezes, armazená-las para fins de pesquisa, análise, 
classificação ou indexação em motores de busca. 
Os mecanismos utilizados por buscadores como o Google são o 
principal exemplo prático de como funciona um crawler: o algoritmo, por 
meio de bots, faz a busca em tempo real de links na internet e promove a 
varredura completa das páginas, a fim de entregá-las nos resultados de 
pesquisa aos usuários, desde que tenham relevância para o tema de 
interesse na busca. 
Trata-se de uma operação completa de data mining ou mineração de 
dados, que funciona em tempo real, sem interrupções e numa escala de 
volume de dados gigantesca, sendo impossível reproduzi-la manualmente. 
Para além da otimização para motores de busca e funcionamento 
desses buscadores, os crawlers têm aplicações que estão sendo cada vez 
mais exploradas pela inteligência de mercado e automação de processos em 
empresas. A partir de robôs personalizados para coletas de dados, é possível 
encontrar qualquer tipo de dado e transformá-lo em informação estratégica. 
Esse tipo de robô é capaz de extrair dados de sites que não possuem 
APIs, ou Interface de programação de aplicações, que permitem a 
comunicação entre a plataforma ou software e a fonte de dados. 
Crawler – Características e Funções 
Navegação Automatizada: os crawlers percorrem a web de forma 
automatizada, seguindo links de uma página para outra, a fim de descobrir 
e acessar novas páginas e conteúdo. 
Coleta de Dados: eles extraem informações de páginas da web, 
incluindo texto, imagens, links, metadados e outros elementos relevantes. 
 
122 
 
Indexação: os dados coletados são organizados e indexados para 
que possam ser pesquisados e recuperados de forma eficiente 
posteriormente. 
Atualização Regular: muitos crawlers operam em intervalos 
regulares para garantir que os dados coletados estejam atualizados. Isso é 
particularmente importante em motores de busca. 
Utilização em Motores de Busca: os crawlers são usados por motores 
de busca, como Google, Bing e Yahoo, para rastrear e indexar a web, 
permitindo que os usuários pesquisem informações online. 
Monitoramento de Mudanças: os crawlers também podem ser 
usados para monitorar mudanças em páginas da web ao longo do tempo, 
como notícias, preços de produtos, ou atualizações em sites. 
Verificação de Links Quebrados: alguns crawlers são usados para 
verificar links quebrados ou páginas não encontradas em um site. 
Recuperação de Informações Específicas: em algumas aplicações, os 
crawlers podem ser configurados para coletar informações específicas de 
interesse, como preços de produtos em sites de comércio eletrônico. 
Respeito às Diretrizes do Robô: muitos sites têm um arquivo 
chamado "robots.txt" que especifica quais partes do site podem ou não ser 
rastreadas por crawlers. Os crawlers normalmente respeitam essas 
diretrizes. 
Ética e Privacidade:a coleta de dados por meio de crawlers levanta 
questões éticas e de privacidade, especialmente quando os dados envolvem 
informações pessoais ou sensíveis. 
Crawlers desempenham um papel fundamental na indexação da web 
e na disponibilização de informações online. Eles são usados em uma 
variedade de contextos, desde motores de busca até análise de 
 
123 
 
concorrência, monitoramento de preços, pesquisa acadêmica e muito mais. 
No entanto, é importante usá-los de maneira ética e respeitar as políticas e 
diretrizes de rastreamento de sites para evitar problemas legais ou éticos. 
Scrapping 
Scraping (ou raspagem de dados) é o processo de coleta 
automatizada de informações de uma página da web, seja ela um site, fórum, 
rede social, loja online ou qualquer outro recurso online. 
O objetivo do scraping é extrair dados específicos, como texto, 
imagens, links, preços de produtos, avaliações de clientes e outros tipos de 
informações, de forma sistemática e automatizada. 
Figura 17 – Web Scraping. 
 
Propósito do Scraping 
Scraping geralmente é usado para os seguintes propósitos: 
Coleta de Dados para Análise: empresas e pesquisadores 
frequentemente usam scraping para coletar dados da web para fins de 
análise de mercado, pesquisa de concorrência, estudos de opinião pública e 
análises de tendências. 
Monitoramento de Preços: lojas online e consumidores podem usar 
scraping para monitorar preços de produtos em diversos sites e receber 
alertas quando os preços mudarem. 
 
124 
 
Acompanhamento de Notícias: plataformas de notícias e blogs 
podem usar scraping para coletar e exibir notícias e artigos de diferentes 
fontes em um único lugar. 
Coleta de Avaliações de Clientes: empresas podem usar scraping 
para coletar avaliações e comentários de clientes de diferentes fontes para 
análise de feedback. 
Geração de Conteúdo: alguns sites usam scraping para coletar 
informações e gerar automaticamente conteúdo para seus próprios sites. 
Pesquisa Acadêmica: pesquisadores podem usar scraping para 
coletar dados de pesquisa de várias fontes na web para estudos acadêmicos. 
Comparação de Preços e Produtos: consumidores podem usar 
scraping para comparar preços e características de produtos de diferentes 
lojas online. 
É importante observar que o scraping de dados da web pode ser uma 
área legalmente complexa e sensível. Nem todos os sites permitem a coleta 
de dados por meio de scraping, e alguns podem considerá-lo uma violação 
dos seus termos de serviço. Além disso, leis de proteção de dados e 
privacidade podem ser aplicadas à coleta e ao uso de dados pessoais. 
Portanto, ao realizar scraping, é fundamental considerar as 
implicações éticas e legais, respeitar as políticas dos sites de destino e, 
quando necessário, obter permissão para coletar dados. Existem também 
ferramentas e bibliotecas específicas de scraping, como Beautiful Soup e 
Scrapy em Python, que facilitam a automação desse processo. 
Web Scraping – Formas de se Fazer 
Usando ferramentas para coletar dados, você pode extrair dados de 
uma página da Web. 
 
125 
 
Existe uma ampla variedade de técnicas e ferramentas de raspagem 
da Web. Estas podem ser tão simples quanto copiar/colar e aumentar a 
complexidade das ferramentas de automação, análise de HTML, APIs e 
programação. 
 
 
126 
 
Figura 18 – Web Scraping. 
 
Web Scraping – HTTP 
Informações de intercâmbio de máquinas transportadas pela 
Internet para permitir a troca de dados multimídia, também conhecida como 
WWW. O protocolo define aspectos de autenticação, solicitações, códigos 
de status, conexões persistentes, solicitação/resposta cliente/servidor etc. 
Acesse um servidor na porta 80, a Definição de Tipo de Documento 
declarativa (HTML, XML, JSON etc.). 
Web scraping via HTTP refere-se à prática de extrair informações de 
páginas da web fazendo solicitações HTTP para os servidores web que 
hospedam essas páginas. É uma técnica comum para coletar dados de sites 
e serviços online. 
Visão geral de como o web scraping via HTTP funciona 
Solicitação HTTP: o processo começa com a construção de uma 
solicitação HTTP para a URL da página da web da qual você deseja coletar 
dados. A solicitação HTTP inclui informações como o método de solicitação 
(geralmente GET), cabeçalhos e, opcionalmente, parâmetros ou dados de 
formulário. 
 
127 
 
Envio da Solicitação: a solicitação HTTP é enviada para o servidor 
web que hospeda a página da web desejada. 
Resposta do Servidor: o servidor web processa a solicitação e envia 
uma resposta HTTP de volta ao cliente (você). A resposta geralmente contém 
o conteúdo HTML da página da web solicitada. 
Análise do Conteúdo HTML: você pode usar bibliotecas ou 
ferramentas de análise de HTML, como Beautiful Soup em Python, para 
analisar o conteúdo HTML da página e extrair informações específicas, como 
texto, links, imagens e muito mais. 
Armazenamento ou Processamento: após a extração dos dados, você 
pode armazená-los em um formato desejado, processá-los para análise ou 
exibi-los em um aplicativo ou site. 
Iteração ou Automação: para coletar informações de várias páginas 
ou em intervalos regulares, você pode automatizar o processo repetindo as 
etapas acima para diferentes URLs ou programando um script para realizar 
o scraping em intervalos predefinidos. 
Figura 19 – Web Scraping – HTTP. 
 
WeB Scraping – Parsing 
 
128 
 
Em web scraping, o termo "parsing" refere-se ao processo de 
analisar o conteúdo HTML ou XML de uma página da web para extrair 
informações específicas e estruturá-las de forma que possam ser facilmente 
manipuladas ou armazenadas. O parsing é uma etapa essencial no processo 
de web scraping, pois permite que você identifique e isole os dados 
relevantes dentro do código-fonte da página da web. Aqui estão os 
principais aspectos do parsing no web scraping: 
Análise do Código Fonte: quando você faz uma solicitação HTTP para 
uma página da web e recebe uma resposta, essa resposta geralmente inclui 
o conteúdo da página em HTML ou XML. O parsing envolve a análise desse 
código-fonte para identificar os elementos que contêm os dados desejados. 
Seletores e Consultas: para localizar e extrair informações 
específicas, você pode usar seletores CSS, consultas XPath ou métodos de 
busca oferecidos por bibliotecas de scraping, como Beautiful Soup (em 
Python). Esses seletores permitem que você encontre elementos HTML que 
correspondem a critérios específicos, como tags, classes, IDs, atributos, 
entre outros. 
Extração de Dados: após identificar os elementos relevantes, você 
pode extrair dados deles. Isso pode incluir a extração de texto, valores de 
atributos, URLs de links, informações de tabelas, entre outros. A extração de 
dados é frequentemente realizada por meio de métodos fornecidos pelas 
bibliotecas de scraping. 
Limpeza e Formatação: após a extração, os dados podem passar por 
um processo de limpeza e formatação. Isso envolve a remoção de caracteres 
indesejados, a conversão de tipos de dados e outras manipulações para 
garantir que os dados estejam prontos para uso. 
 
129 
 
Estruturação dos Dados: os dados extraídos são frequentemente 
estruturados em uma forma organizada, como listas, dicionários ou tabelas, 
para facilitar sua manipulação e análise posterior. 
Iteração em Múltiplas Páginas: em cenários em que você deseja 
coletar dados de várias páginas da web (por exemplo, em um site de várias 
páginas), o parsing pode ser repetido em cada página, e os dados extraídos 
são acumulados em um único conjunto de dados. 
Tratamento de Erros: durante o parsing, é importante considerar 
cenários de erro, como elementos ausentes ou estruturas inesperadas no 
código-fonte. O tratamento adequado de erros é essencial para garantir que 
o scraping seja robusto. 
O parsing é uma parte fundamental do processo de web scraping, 
pois permite que você transforme o conteúdonão estruturado de páginas 
da web em dados estruturados e utilizáveis. Bibliotecas e ferramentas de 
web scraping, como Beautiful Soup, lxml e Scrapy em Python, oferecem 
recursos e funcionalidades poderosas para ajudar na análise e no parsing 
eficazes de páginas da web. 
Web Scraping – JSON 
O web scraping por JSON refere-se ao processo de coleta de dados 
estruturados diretamente de APIs (Application Programming Interfaces) 
que retornam informações no formato JSON (JavaScript Object Notation). 
Diferentemente do web scraping tradicional, que envolve a análise do 
conteúdo HTML ou XML de páginas da web, o web scraping por JSON 
envolve a extração de dados de endpoints de API que fornecem informações 
em um formato estruturado e fácil de processar. 
Figura 20 – Web Scraping – JSON. 
 
130 
 
 
Web Scraping – API 
API significa Application Programming Interface ou Interface de 
programação de aplicativos é um conjunto de regras e protocolos usados 
para construir um aplicativo de software. 
No contexto do Web Scraping, uma API é um método usado para 
coletar dados limpos de um site (ou seja, dados que não são encapsulados 
em HTML, Javascript, vinculados a HTTP etc.). 
 
131 
 
Figura 21 – Web Scraping – API. 
 
Identificação da API: primeiro, você precisa identificar a API da qual 
deseja coletar dados. Isso pode ser uma API pública ou privada fornecida 
por um serviço online, aplicativo ou plataforma. 
Solicitação HTTP: você faz solicitações HTTP para os endpoints da 
API usando um cliente HTTP, como o módulo “requests” em Python. Essas 
solicitações geralmente são feitas com métodos HTTP, como GET ou POST, 
e podem incluir parâmetros ou cabeçalhos para personalizar a solicitação. 
Processamento da Resposta JSON: quando a API responde, ela 
geralmente retorna os dados em formato JSON. Você pode usar bibliotecas 
de análise JSON, como o módulo "json" em Python, para analisar a resposta 
e transformá-la em objetos ou estruturas de dados utilizáveis na linguagem 
de programação de sua escolha. 
Extração de Dados: com os dados JSON estruturados, você pode 
extrair as informações específicas que deseja da resposta da API. Isso pode 
envolver a navegação por objetos JSON, listas e campos para acessar os 
dados relevantes. 
Armazenamento ou Processamento: após a extração, os dados 
podem ser armazenados em um banco de dados, arquivo ou processados 
conforme necessários para análise, relatórios ou outras atividades. 
 
 
132 
 
Web Scraping – Ética 
É importante observar que, ao realizar web scraping via HTTP, é 
fundamental respeitar as políticas do site que está sendo acessado. Alguns 
sites podem proibir ou limitar a coleta de dados por meio de scraping em 
seus termos de serviço. Portanto, é aconselhável verificar as políticas de uso 
de um site antes de realizar qualquer scraping. 
Além disso, os servidores web podem detectar atividades de 
scraping e podem implementar medidas de segurança, como firewalls, 
bloqueio de IP ou CAPTCHAs para protegerem-se contra scraping não 
autorizado. Portanto, ao realizar scraping, é importante fazê-lo de maneira 
ética e legal, respeitando as políticas do site e evitando sobrecarregar os 
servidores com solicitações excessivas. 
A ética desempenha um papel crucial no web scraping, pois essa 
prática envolve a coleta de dados de fontes online e o uso inadequado ou 
não autorizado desses dados pode resultar em problemas éticos e legais. 
Aqui estão alguns princípios éticos importantes a serem considerados ao 
realizar web scraping: 
• Respeitar os Termos de Serviço: antes de realizar web scraping em 
um site, leia e compreenda os termos de serviço daquele site. 
Alguns sites proíbem explicitamente a coleta automatizada de 
dados em seus termos de serviço. Respeite essas políticas. 
• Obter Permissão, se Necessário: se o site ou a fonte de dados exigir 
permissão ou autenticação para acessar suas informações, 
certifique-se de obtê-la de forma apropriada. Não acesse dados sem 
permissão. 
• Limites de Taxa e Velocidade: ao realizar web scraping, respeite os 
limites de taxa (taxa de solicitação) definidos pelo site de destino. 
 
133 
 
Não sobrecarregue o servidor com solicitações excessivas em um 
curto período de tempo. 
• Evitar sobrecarga: não sobrecarregue intencionalmente o servidor 
da web de destino com solicitações excessivas. O scraping 
agressivo pode prejudicar o desempenho do site e é antiético. 
• Não Manipular Dados: não manipule ou altere dados em um site de 
forma maliciosa ou enganosa. Mantenha a integridade dos dados. 
• Não Compartilhar Dados Sensíveis: se você coletar dados sensíveis 
ou privados, não os compartilhe ou divulgue sem o devido 
consentimento ou autorização legal. 
• Dar Crédito e Atribuição: se você planeja usar os dados coletados 
publicamente em uma capacidade que exija atribuição, forneça 
crédito ao site de origem ou à fonte dos dados sempre que 
apropriado. 
• Monitoramento Ético: mantenha um monitoramento ético das 
atividades de scraping para garantir que você não esteja infringindo 
os princípios éticos ou as políticas do site de origem. 
• Segurança de Dados: certifique-se de que os dados coletados sejam 
tratados com segurança e protegidos contra acesso não autorizado. 
• Propósito Legítimo: use os dados coletados para propósitos 
legítimos e éticos, como pesquisa, análise, criação de valor ou 
outros usos que não violem os direitos ou a privacidade dos 
usuários. 
 
 
 
 
134 
 
 
 
 
 
 
 
 
 
 
6 
 
136 
 
Capítulo 6. Transformação de Dados 
Conceitos de Transformação de Dados 
Após a extração, teremos subsídios para iniciar a etapa de 
transformação e limpeza dos dados. Nessa fase são corrigidos, padronizados 
e tratados os desvios e inconsistências, transformando os dados de acordo 
com as regras do negócio. 
É nesta etapa que realizamos os devidos ajustes, podendo assim, 
melhorar a qualidade dos dados e consolidar dados de duas ou mais fontes. 
O estágio de transformação aplica uma série de regras ou funções aos dados 
extraídos para ajustar os dados a serem carregados. 
O processo de transformação de dados é composto por vários 
subprocessos: 
• Limpeza de Dados: é o processo de identificar e corrigir erros, 
inconsistências e valores ausentes nos dados. Isso pode incluir a 
remoção de duplicatas, correção de erros de digitação e 
preenchimento de valores em falta. 
• Normalização de Dados: envolve a padronização de dados para que 
eles sigam um formato consistente. Isso pode incluir a conversão 
de unidades de medida, datas e moedas para um padrão comum. 
• Agregação de Dados: é o processo de resumir dados em níveis mais 
altos de granularidade. Por exemplo, transformar dados diários em 
dados mensais ou anuais. 
• Filtragem de Dados: consiste em remover ou reter apenas os dados 
que são relevantes para uma análise específica. Isso ajuda a reduzir 
o volume de dados sem perder informações importantes. 
 
137 
 
• Concatenação de Dados: combina conjuntos de dados diferentes, 
geralmente empilhando linhas ou mesclando colunas, para criar um 
único conjunto de dados. Isso é útil quando você tem fontes de 
dados separadas que precisam ser combinadas. 
• Derivação de Dados: criação de novos dados com base nos dados 
existentes por meio de cálculos ou transformações. Isso pode 
incluir a criação de índices, categorias, métricas ou variáveis 
derivadas. 
• Mapeamento de Dados: envolve a correspondência de valores de 
uma fonte de dados a valores equivalentes em outra fonte, 
normalmente usando tabelas de mapeamento. 
• Padronização de Dados: garante que os dados sigam as convenções 
e os formatos especificados, o que é importante para facilitar a 
integração e a interoperabilidade entre sistemas. 
• Enriquecimento de Dados: adiciona informações adicionais aos 
dados a partir de fontes externas para torná-los mais informativos. 
Por exemplo,enriquecer dados de clientes com informações 
demográficas de terceiros. 
• Agregação de Dados Não Estruturados: transformação de dados 
não estruturados, como texto ou imagens, em um formato 
estruturado que pode ser analisado. 
• Redução de Dimensionalidade: reduz o número de variáveis em um 
conjunto de dados, mantendo as informações mais importantes. 
Isso é comum em análises de machine learning. 
• Remoção de Outliers: identifica e remove valores atípicos ou 
discrepantes que podem distorcer análises estatísticas. 
 
138 
 
• Segmentação de Dados: divide um conjunto de dados em grupos ou 
segmentos com base em critérios específicos, como segmentação 
de clientes com base em comportamento de compra. 
• Codificação de Dados Categóricos: transformação de variáveis 
categóricas em um formato numérico que pode ser usado em 
algoritmos de machine learning. 
A transformação de dados desempenha um papel fundamental em 
todos os aspectos do gerenciamento de dados, desde a preparação de dados 
para análises até a integração de fontes de dados heterogêneas. É uma 
etapa crítica para garantir que os dados estejam em um estado adequado 
para uso em aplicativos, análises e tomada de decisões. 
Entender Formato de Dados 
No contexto da transformação de dados, entender o formato dos 
dados significa compreender a estrutura, organização e representação dos 
dados dentro de um conjunto de dados ou de um arquivo. 
Isso envolve a análise dos tipos de dados, da disposição dos dados e 
das características específicas que definem como os dados estão 
armazenados. 
Compreender o formato dos dados é fundamental para realizar com 
sucesso operações de transformação de dados, como limpeza, agregação, 
análise ou qualquer outra manipulação. 
Tipos de Dados 
Devemos identificar quais tipos de dados estão presentes no 
conjunto de dados, como números inteiros, números de ponto flutuante, 
datas, strings, entre outros. 
Variáveis Qualitativas (ou categóricas): são as características que 
não possuem valores quantitativos, mas, ao contrário, são definidas por 
 
139 
 
várias categorias, ou seja, representam uma classificação dos indivíduos. 
Podem ser nominais ou ordinais. 
Variáveis nominais: não existe ordenação dentre as categorias. 
Exemplos: sexo, cor dos olhos, fumante/não fumante, doente/sadio. 
Variáveis ordinais: existe uma ordenação entre as categorias. 
Exemplos: escolaridade (1o, 2o, 3o graus), estágio da doença (inicial, 
intermediário, terminal), mês de observação (janeiro, fevereiro,..., dezembro). 
Variáveis Quantitativas: são as características que podem ser 
medidas em uma escala quantitativa, ou seja, apresentam valores numéricos 
que fazem sentido. Podem ser contínuas ou discretas. 
• Variáveis discretas: características mensuráveis que podem 
assumir apenas um número finito ou infinito contável de valores e, 
assim, somente fazem sentido valores inteiros. Geralmente são o 
resultado de contagens. Exemplos: número de filhos, número de 
bactérias por litro de leite, número de cigarros fumados por dia. 
• Variáveis contínuas: características mensuráveis que assumem 
valores em uma escala contínua (na reta real), para as quais valores 
fracionais fazem sentido. Usualmente devem ser medidas através 
de algum instrumento. Exemplos: peso (balança), altura (régua), 
tempo (relógio), pressão arterial e idade. 
Figura 22 – Tipos de Variáveis. 
 
140 
 
 
Estrutura dos Dados 
Compreender a estrutura dos dados, incluindo se eles estão 
organizados em formato tabular (linhas e colunas), hierárquico (como XML 
ou JSON), ou de outra forma. 
Texto (Texto Simples ou CSV – Comma-Separated Values): os dados 
são armazenados como texto simples em que cada linha representa um 
registro e os campos são separados por vírgulas (ou outro delimitador). É um 
formato amplamente usado para armazenar dados tabulares. 
JSON (JavaScript Object Notation): é um formato leve de troca de 
dados que usa uma estrutura de pares chave-valor. É amplamente utilizado 
em aplicativos da web e APIs para transmitir dados entre um servidor e um 
cliente. 
XML (eXtensible Markup Language): é um formato de marcação que 
organiza os dados em árvores hierárquicas usando tags. É frequentemente 
usado para representar dados estruturados e é comum em documentos e 
configurações. 
Banco de Dados Relacional (SQL): os dados são armazenados em 
tabelas com relações definidas. O SQL (Structured Query Language) é usado 
para gerenciar e consultar esses bancos de dados. 
 
141 
 
Banco de Dados NoSQL: estes incluem diversos formatos, como 
documentos (por exemplo, MongoDB), colunas (por exemplo, Cassandra), 
grafos (por exemplo, Neo4j) e chave-valor (por exemplo, Redis). Eles são 
usados para diferentes tipos de dados e casos de uso. 
Arquivos Binários: são formatos de dados que armazenam 
informações de forma binária, o que significa que não são facilmente legíveis 
por humanos. Exemplos incluem formatos de imagem (JPEG, PNG), 
formatos de áudio (MP3, WAV) e formatos de vídeo (MP4, AVI). 
Parquet e Avro: são formatos de dados otimizados para análise de 
Big Data. Eles são usados em ecossistemas como Hadoop e Spark para 
armazenar e processar grandes volumes de dados. 
HDF5 (Hierarchical Data Format 5): é um formato de dados utilizado 
para armazenar grandes conjuntos de dados científicos e dados 
multidimensionais. É comumente usado em ciência e engenharia. 
ARFF (Attribute-Relation File Format): é um formato de dados usado 
em aprendizado de máquina e mineração de dados. Ele descreve conjuntos 
de dados em que os atributos e as classes são especificados. 
Formato de Log: registra informações de eventos em sistemas e 
aplicativos. Exemplos incluem logs de servidores da web (como formato 
Apache) e logs de sistemas (como formato syslog). 
Formato de Imagem Médica (DICOM): é usado para armazenar e 
trocar informações médicas, como imagens de raios-X, tomografias e 
ressonâncias magnéticas. 
Formato de Geodados (Shapefile, GeoJSON): são formatos 
específicos para armazenar dados geoespaciais, como mapas e informações 
de localização. 
 
142 
 
Formato GTFS: os dados no formato GTFS são organizados em uma 
série de arquivos CSV (Comma-Separated Values) que descrevem diferentes 
aspectos dos serviços de transporte público. O GTFS é um formato de 
arquivo estruturado que permite que as agências de transporte público 
forneçam dados sobre seus serviços de uma maneira padronizada e 
interoperável, facilitando o desenvolvimento de aplicativos e serviços 
relacionados ao transporte público. 
Os dados no formato GTFS são organizados em uma série de 
arquivos CSV (Comma-Separated Values) que descrevem diferentes 
aspectos dos serviços de transporte público. Cada arquivo CSV representa 
um tipo específico de informação. Aqui estão alguns dos arquivos principais 
que fazem parte de um feed GTFS típico: 
• agency.txt: este arquivo descreve a agência ou operador do serviço 
de transporte público, incluindo informações como nome, site e 
informações de contato. 
• stops.txt: descreve as paradas ou estações do sistema de 
transporte público, incluindo nomes, coordenadas geográficas 
(latitude e longitude) e outras informações relevantes. 
• routes.txt: fornece informações sobre as rotas de viagem, incluindo 
o nome da rota, o tipo de veículo (ônibus, metrô etc.) e outros 
detalhes. 
• trips.txt: descreve as viagens ou serviços específicos ao longo de 
uma rota, indicando a programação horária e outras informações 
relacionadas. 
• stop_times.txt: define os horários de partida e chegada em cada 
parada ou estação ao longo de uma viagem. 
 
143 
 
• calendar.txt: especifica o calendário de operação do serviço de 
transporte público, incluindo datas de início e término da operação, 
dias da semana em que o serviço é oferecido e exceções. 
• calendar_dates.txt: fornece datas de exceção ao calendário regular, 
como feriadosou alterações temporárias no serviço. 
Limpeza e Organização dos Dados 
No contexto de transformação de dados, o processo de limpeza e 
organização de dados é uma etapa fundamental para garantir que os dados 
estejam em um estado adequado para análises, processamento ou uso em 
aplicativos. 
Esse processo envolve a detecção, correção e organização de dados 
de modo a eliminar erros, inconsistências e garantir que eles estejam em 
conformidade com os padrões e requisitos definidos. 
Detecção de Dados Ausentes: identificação e tratamento de valores 
ausentes (missing values) nos dados. Isso pode envolver o preenchimento 
de valores ausentes com estimativas apropriadas ou a exclusão de registros 
com dados ausentes, dependendo do impacto nos resultados. 
Eliminação de Duplicatas: identificação e remoção de registros 
duplicados nos dados, garantindo que cada registro seja exclusivo. Isso é 
importante para evitar contagens ou análises distorcidas. 
Padronização de Dados: garantir que os dados sigam convenções de 
formatação consistentes. Isso pode incluir a padronização de datas, 
moedas, códigos postais, unidades de medida e outros formatos. 
Correção de Erros de Digitação: identificação e correção de erros de 
digitação, ortografia ou formatação nos dados, garantindo que eles sejam 
precisos e consistentes. 
 
144 
 
Validação de Dados: verificação de dados em relação a regras de 
negócios ou validações específicas para garantir que eles estejam em 
conformidade com requisitos estabelecidos. 
Normalização de Dados: transformação de dados em um formato 
normalizado, quando necessário, para que sejam comparáveis e 
interoperáveis entre diferentes fontes. 
Remoção de Outliers: identificação e tratamento de valores atípicos 
que podem distorcer análises estatísticas ou modelos de machine learning. 
Mapeamento de Valores: substituição de valores codificados ou 
abreviados por valores mais descritivos ou significativos. Isso pode envolver 
a utilização de tabelas de mapeamento. 
Agregação de Dados: agregação de dados em níveis de granularidade 
diferentes, como resumir dados diários em dados mensais ou anuais. 
Ordenação e Indexação: organização dos dados em uma ordem 
específica e criação de índices para facilitar consultas e pesquisas 
eficientes. 
Segmentação de Dados: divisão dos dados em grupos ou segmentos 
com base em critérios específicos, como segmentação de clientes por 
comportamento de compra. 
Normalização de Nomes e Entidades: padronização de nomes e 
entidades (por exemplo, empresas e produtos) para garantir consistência na 
representação. 
Verificação de Consistência Referencial: em bancos de dados 
relacionais, garantir que as relações entre tabelas estejam consistentes, 
usando chaves primárias e estrangeiras. 
Detecção de Fraudes Cartão de Crédito 
 
145 
 
A detecção de fraude em operações de cartões de crédito é uma área 
crítica para as instituições financeiras e as empresas de cartões de crédito, 
pois ajuda a proteger os clientes contra transações fraudulentas e minimiza 
as perdas financeiras. 
A detecção de fraude envolve o uso de várias técnicas e métodos 
avançados para identificar atividades suspeitas. Aqui estão os principais 
passos e técnicas usados na detecção de fraude em operações de cartões 
de crédito: 
• Coleta de Dados: o primeiro passo é coletar uma ampla gama de 
dados de transações de cartões de crédito, incluindo informações 
sobre o titular do cartão, estabelecimento comercial, valor da 
transação, localização geográfica e outros detalhes relevantes. 
• Análise de Comportamento Histórico: as instituições financeiras 
analisam o histórico de transações do titular do cartão para 
identificar padrões de comportamento típicos. Isso envolve a 
criação de perfis de transações normais. 
• Detecção de Anomalias: o sistema de detecção de fraude utiliza 
algoritmos de detecção de anomalias para identificar transações 
que não se encaixam nos padrões normais. Por exemplo, uma 
transação de grande valor fora do padrão de gastos do titular do 
cartão pode ser considerada uma anomalia. 
• Monitoramento em Tempo Real: transações são monitoradas em 
tempo real e alertas são gerados para transações suspeitas. Isso 
permite uma resposta imediata a atividades fraudulentas. 
• Modelagem Estatística e Machine Learning: muitos sistemas de 
detecção de fraude utilizam modelos estatísticos e técnicas de 
machine learning para aprimorar a detecção de anomalias. Esses 
 
146 
 
modelos podem ser treinados com dados históricos para identificar 
padrões sutis. 
• Integração de Dados Externos: além das transações de cartão de 
crédito, as instituições podem integrar dados externos, como 
informações de crédito, listas de bloqueio de cartões roubados e 
dados de geolocalização. 
• Regras e Heurísticas: além de técnicas de aprendizado de máquina, 
as instituições financeiras também usam regras e heurísticas 
definidas para identificar atividades suspeitas. Isso inclui verificar 
transações em locais de alto risco, padrões incomuns de gastos e 
outros critérios. 
• Aprendizado Contínuo: os sistemas de detecção de fraude 
geralmente aprendem continuamente com novos dados. Isso ajuda 
a melhorar a precisão das detecções à medida que novos padrões 
de fraude surgem. 
• Alertas e Resposta: quando uma transação suspeita é detectada, 
um alerta é gerado e uma resposta imediata é acionada. Isso pode 
incluir o bloqueio temporário do cartão, a notificação do titular do 
cartão e a investigação adicional. 
• Revisão Manual: em alguns casos, transações suspeitas podem ser 
revisadas manualmente por analistas de fraude para tomar 
decisões informadas sobre sua autenticidade. 
• Feedback do Cliente: os clientes também são incentivados a relatar 
transações suspeitas. Suas observações podem ser valiosas para 
melhorar os sistemas de detecção de fraude. 
• Regulamentações de Segurança: as instituições financeiras devem 
cumprir regulamentações de segurança, como o Padrão de 
 
147 
 
Segurança de Dados do Setor de Cartões de Pagamento (PCI DSS), 
para proteger informações de cartões de crédito. 
Data Wrangling – Organizando Dados 
O termo “Data Wrangling” refere-se ao processo de coleta, limpeza, 
transformação e organização de dados brutos em um formato adequado 
para análise ou uso em uma aplicação específica. 
O objetivo do Data Wrangling é preparar os dados de maneira que 
sejam confiáveis, consistentes e prontos para serem explorados ou 
analisados. 
O data wrangling é uma etapa crítica no ciclo de vida dos dados, pois 
a qualidade e a preparação adequada dos dados são essenciais para análises 
precisas e confiáveis. É comum que os cientistas de dados, analistas de 
dados e engenheiros de dados dediquem uma parte significativa do seu 
tempo ao data wrangling antes de iniciar as análises propriamente ditas. 
Etapas Típicas em um Data wrangling 
Coleta de Dados: Isso envolve a obtenção de dados de várias fontes, 
como bancos de dados, arquivos, APIs ou até mesmo raspagem da web. 
Limpeza de Dados: durante esta etapa, os dados são verificados 
quanto a erros, valores ausentes, duplicatas e outros problemas. Os dados 
ausentes podem ser preenchidos ou tratados de acordo com as 
necessidades do projeto. 
Transformação de Dados: os dados são transformados para atender 
aos requisitos de análise ou uso específicos. Isso pode incluir a conversão 
de formatos de dados, agregação, normalização, derivação de novos campos, 
codificação de variáveis categóricas e outras manipulações. 
 
148 
 
Organização de Dados: os dados são organizados em uma estrutura 
que facilita a análise. Isso pode incluir a ordenação de dados, a criação de 
índices e a formatação adequada para facilitar consultas e visualizações. 
Validação de Dados: os dados transformados são validados para 
garantir que estejam corretos e que os resultados das transformações sejam 
consistentes comas expectativas. 
Documentação: é importante documentar todas as etapas do 
processo de data wrangling para garantir a rastreabilidade e a 
replicabilidade. Isso inclui registros de transformações aplicadas, decisões 
tomadas e tratamento de exceções. 
Automatização: em muitos casos, as etapas de data wrangling 
podem ser automatizadas usando scripts ou ferramentas de ETL (Extração, 
Transformação e Carga) para lidar com grandes volumes de dados de forma 
eficiente. 
Data Wrangling – Linguagem R 
Em Linguagem R existem funções que facilitam o processo de data 
wrangling, permitindo que a partir de um data frame, o usuário o transforme 
em um formato útil. 
As principais funções estão contidas no pacote dplyr, também 
chamadas de verbs. Alguns verbs uteis são: 
• filter() – Permite que seja filtrado as linhas/observações de um data 
frame de acordo com uma condição. 
• summarize() – Sumariza uma ou mais colunas/variáveis, permitindo 
calcular uma estatística por meio de grupos. 
• group_by() – Agrupa as linhas de acordo com um mesmo 
grupo/categorias. É utilizado em conjunto com summarize() de 
 
149 
 
forma que seja possível calcular as estatísticas de um grupo 
separadamente. 
• mutate() – Utiliza colunas existentes do data frame para criar novas 
colunas. 
• arrange() – Permite ordenar as linhas em ordem ascendente ou 
descendente. 
• recode() – Permite alterar o nome das observações de uma coluna. 
select() – Seleciona as colunas especificadas (também permite alterar seus nomes).
 
 
7 
 
151 
 
Capítulo 7. Soluções de ETL e ELT 
ETL 
ELT significa "Extrair, Carregar e Transformar". É uma sigla que 
representa um processo fundamental no campo do gerenciamento de 
dados. Ela significa “Extração, Transformação e Carga”, e refere-se a um 
conjunto de atividades e processos usados para mover, transformar e 
carregar dados de uma fonte para um destino, geralmente de um sistema 
para outro. 
O ETL é comumente usado em ambientes de armazenamento de 
dados, bancos de dados, Data Warehouses e sistemas de business 
intelligence para garantir que os dados estejam prontos para análises e 
relatórios. 
O processo ETL é essencial em ambientes de dados onde os dados 
precisam ser integrados, consolidados e preparados para análises ou 
relatórios. Ele ajuda a garantir que os dados estejam limpos, consistentes e 
em um formato adequado para uso posterior. Além disso, o ETL é 
frequentemente automatizado para tornar o processo mais eficiente e 
repetível. 
O ETL desempenha um papel crítico em muitos aspectos do 
gerenciamento de dados, incluindo data warehousing, business intelligence, 
migração de dados, integração de sistemas e muito mais. É uma parte 
fundamental da infraestrutura de dados em muitas organizações que 
dependem de informações precisas e oportunas para tomada de decisões 
informadas. 
 
 
152 
 
Aqui está uma explicação mais detalhada das três fases do processo 
ETL: 
• Extração (Extraction): nesta fase, os dados são coletados a partir de 
uma ou várias fontes de dados. As fontes podem incluir bancos de 
dados, sistemas de registro, arquivos, feeds de streaming, 
aplicativos da web, entre outros. A extração pode envolver a 
obtenção de dados brutos ou informações específicas de interesse. 
• Transformação (Transformation): uma vez que os dados são 
extraídos, eles geralmente precisam ser transformados para 
atender aos requisitos de destino. Isso inclui atividades como 
limpeza de dados, correção de erros, normalização, agregação, 
derivação de novos campos, filtragem e padronização. A 
transformação é onde os dados são preparados e formatados para 
análises posteriores. 
• Carga (Load): após a extração e transformação, os dados 
processados e transformados são carregados em um destino 
específico, que geralmente é um banco de dados, Data Warehouse 
ou sistema de armazenamento de dados. A carga pode ser realizada 
de várias maneiras, como substituição completa (overwrite), 
inserção incremental ou atualização de registros existentes. 
Ralph Kimball é um renomado autor e consultor na área de data 
warehousing e business intelligence (BI). Ele é amplamente reconhecido por 
suas contribuições significativas para o campo do gerenciamento de dados 
e é uma figura importante no desenvolvimento de técnicas e metodologias 
de data warehousing. Kimball é conhecido principalmente por sua 
abordagem de modelagem dimensional, que é uma técnica fundamental no 
design de Data Warehouses. 
 
153 
 
Aqui estão alguns pontos-chave sobre Ralph Kimball e suas 
contribuições: 
• Modelagem Dimensional: Ralph Kimball é um dos principais 
defensores da modelagem dimensional, que é uma técnica de 
design de Data Warehouse que se concentra em organizar os dados 
em torno de dimensões e fatos. Isso resulta em esquemas estrela 
ou floco de neve, que são altamente otimizados para consultas de 
BI. 
• Livros e Publicações: Kimball é autor de vários livros populares 
sobre data warehousing e BI, incluindo "The Data Warehouse 
Toolkit," que é considerado uma referência na área. Seus livros 
descrevem suas metodologias e melhores práticas em detalhes. 
• Metodologia Kimball: Ele desenvolveu a Metodologia Kimball, que é 
um conjunto de diretrizes e práticas recomendadas para projetar e 
implementar Data Warehouses. Isso inclui etapas específicas, 
como projeto dimensional, design de ETL (Extração, Transformação 
e Carga), desenvolvimento de relatórios e muito mais. 
Figura 23 – ETL. 
 
 
 
154 
 
ELT 
O ELT é uma abordagem de processamento de dados semelhante ao 
ETL (Extração, Transformação e Carga), mas com uma diferença 
fundamental na ordem das operações. 
A sigla ELT representa "Extração, Carga e Transformação". Enquanto 
no ETL a transformação ocorre antes do carregamento dos dados em um 
sistema de destino, no ELT, os dados são extraídos da fonte, carregados 
diretamente no sistema de destino e, em seguida, a transformação é 
realizada dentro do sistema de destino. 
Figura 24 – ELT. 
 
 
 
 
8 
 
156 
 
Capítulo 8. Orquestração de Dados 
Conceitos de Orquestração de Dados 
A Orquestração de Dados refere-se ao processo de planejamento, 
coordenação e gerenciamento das etapas envolvidas na ingestão, 
processamento, transformação e entrega de dados em um pipeline de dados. 
A Orquestração desempenha um papel fundamental na automação 
e na garantia de que as tarefas de processamento de dados ocorram de 
maneira sequencial e eficiente. 
Fluxo de Trabalho (Workflow): um fluxo de trabalho é uma 
representação lógica das etapas sequenciais ou paralelas em um pipeline de 
dados. Ele descreve a ordem em que as tarefas devem ser executadas e 
como elas estão relacionadas. Os fluxos de trabalho podem ser definidos e 
gerenciados usando ferramentas de orquestração de dados. 
Tarefa (Task): uma tarefa é uma unidade de trabalho em um fluxo de 
trabalho de dados. Pode ser uma ação específica, como a extração de dados 
de uma fonte, a transformação de dados ou a carga de dados em um destino. 
Cada tarefa é uma etapa individual que contribui para o processamento geral 
dos dados. 
Dependências: as dependências definem as relações entre tarefas 
em um fluxo de trabalho. Elas especificam quais tarefas devem ser 
concluídas antes que outras possam começar. Isso garante que as tarefas 
sejam executadas na ordem correta. 
Programação (Scheduling): a programação envolve o agendamento 
de tarefas em um pipeline de dados. Isso define quando as tarefas devem 
ser executadas, com que frequência e em que ordem. A programação pode 
ser baseada em cronogramas, gatilhos de eventos ou outros critérios. 
 
157 
 
Gerenciamento de Erros: a orquestração de dados também inclui o 
tratamento de erros e exceções. Isso envolve a definição de ações a serem 
tomadas em caso de falhas em uma tarefa, como tentar novamente, registrar 
erros ou enviar notificações. 
Monitoramentoe Logs: a capacidade de monitorar a execução das 
tarefas e acessar logs é crucial na orquestração de dados. Isso permite 
rastrear o progresso do pipeline, identificar problemas e solucionar 
problemas rapidamente. 
Escalabilidade: a orquestração deve ser capaz de lidar com a 
escalabilidade das operações de processamento de dados. Isso inclui a 
distribuição de tarefas em vários nós ou clusters para processar grandes 
volumes de dados de maneira eficiente. 
Integração de Fontes e Destinos: a orquestração de dados também 
envolve a integração com diversas fontes de dados e destinos, como bancos 
de dados, sistemas de armazenamento, APIs e serviços de nuvem. 
Gerenciamento de Metadados: o gerenciamento de metadados é 
importante para rastrear informações sobre os dados, como esquemas, 
formatos e descrições, facilitando o entendimento e a governança dos 
dados. 
Ferramentas de Orquestração de Dados: existem várias ferramentas 
e frameworks projetados para ajudar na orquestração de dados, como 
Apache Airflow, Prefect, Apache NiFi, Luigi e muitos outros. Essas 
ferramentas simplificam o processo de criação, execução e monitoramento 
de pipelines de dados complexos. 
A Orquestração de Dados é essencial para garantir que os pipelines 
de dados funcionem de maneira confiável, automatizada e eficiente, 
permitindo que as organizações aproveitem ao máximo seus dados para 
análise, tomada de decisões e outras finalidades. 
 
158 
 
 
 
159 
 
Azure Data Factory 
O Azure Data Factory é um serviço de integração de dados sem 
servidor, totalmente gerenciado. 
É possível integrar visualmente as fontes de dados usando mais de 
90 conectores internos livres de manutenção e sem custo adicional. 
É possível construir processos ETL (extrair/transformar/carregar) e 
ELT (extrair/carregar/transformar) facilmente sem código dentro de um 
ambiente visual intuitivo ou codificar seu próprio código. 
Em seguida, forneça dados integrados ao Azure Synapse Analytics 
para desbloquear insights de negócios. 
Figura 25 – Ingestão no Azure Data Factory. 
 
Escolha entre mais de 90 conectores internos para adquirir dados de 
fontes de Big Data, como Amazon Redshift, Google BigQuery e HDFS; Data 
Warehouses corporativos como Oracle Exadata e Teradata; aplicativos SaaS 
 
160 
 
como Salesforce, Marketo e ServiceNow; e todos os serviços de dados do 
Azure. 
Use a capacidade total da largura de banda de rede subjacente, com 
até 5 GB/s de taxa de transferência. 
O Azure Data Factory é um serviço de orquestração de dados 
oferecido pela Microsoft como parte do ecossistema do Microsoft Azure. Ele 
é projetado para ajudar as organizações a mover, transformar e processar 
dados de forma eficiente, permitindo que elas construam pipelines de dados 
automatizados e gerenciem todo o ciclo de vida do processo de dados. O 
Azure Data Factory desempenha um papel crucial no ecossistema de 
serviços de dados na nuvem da Microsoft. 
Orquestração de Dados: o Azure Data Factory permite criar fluxos de 
trabalho (pipelines) de dados que orquestram a coleta, transformação e 
movimentação de dados entre várias fontes e destinos. Isso é útil para criar 
fluxos de trabalho automatizados que economizam tempo e recursos. 
Integração de Dados: você pode integrar dados de diversas fontes, 
como bancos de dados locais, sistemas de armazenamento em nuvem (como 
o Azure Blob Storage ou o Azure SQL Database), serviços de terceiros e 
muito mais. Isso facilita a centralização de dados de várias fontes. 
Transformação de Dados: o Azure Data Factory suporta 
transformações de dados, permitindo que você aplique lógica de negócios 
aos seus dados durante o processo de movimentação e transformação. Isso 
inclui limpeza, agregação, formatação e muito mais. 
Agendamento e Monitoramento: você pode agendar a execução de 
pipelines de dados em horários específicos ou acioná-los com base em 
eventos. Além disso, o Azure Data Factory fornece recursos de 
monitoramento e rastreamento para acompanhar o progresso dos pipelines 
e identificar problemas. 
 
161 
 
Integração com Serviços Azure: O Azure Data Factory é altamente 
integrado com outros serviços Azure, como o Azure Databricks, Azure 
HDInsight, Azure Machine Learning, Azure Synapse Analytics 
(anteriormente conhecido como SQL Data Warehouse) e muitos outros, 
permitindo a criação de fluxos de trabalho de análise de dados complexos. 
Segurança e Conformidade: o serviço é projetado com segurança em 
mente e oferece recursos de controle de acesso, criptografia e conformidade 
com padrões de segurança, como GDPR e HIPAA. 
Evolução dos Dados: com o Azure Data Factory você pode lidar com 
dados em constante evolução, incluindo o suporte a dados em streaming e 
em lote, o que é fundamental para lidar com os requisitos de dados em 
tempo real. 
Escalabilidade e Desempenho: o Azure Data Factory é altamente 
escalável e pode lidar com grandes volumes de dados e cargas de trabalho 
de processamento intensivo. 
Figura 26 – Microsoft Azure. 
 
 
 
162 
 
Google DataFlow 
O Google Dataflow é um serviço gerenciado oferecido pelo Google 
Cloud Platform (GCP) que permite a criação, implementação e execução de 
pipelines de processamento de dados em escala. Ele foi projetado para 
ajudar as organizações a processar e analisar grandes volumes de dados de 
maneira eficiente e escalável. Aqui estão os principais usos e 
funcionalidades do Google Dataflow: 
• Processamento de Dados em Tempo Real e em Lote: o Google 
Dataflow suporta o processamento de dados tanto em tempo real 
quanto em lote. Isso permite que você construa pipelines de dados 
que podem lidar com fluxos de dados contínuos e grandes volumes 
de dados históricos. 
• Orquestração de Pipelines: o Dataflow permite criar e orquestrar 
pipelines de dados que envolvem a extração, transformação e carga 
(ETL) de dados. Você pode definir a lógica de processamento em 
código e implementá-la em um ambiente gerenciado. 
• Programação baseada em Modelo: o Google Dataflow usa o modelo 
de programação baseado em Apache Beam, que fornece uma 
abstração unificada para expressar pipelines de dados em várias 
linguagens de programação, como Python e Java. 
• Escalabilidade Automatizada: o serviço gerencia automaticamente 
a escalabilidade dos recursos de computação para atender às 
demandas do pipeline. Ele aloca recursos conforme necessário e os 
libera quando não estão mais em uso. 
• Integração com Serviços do Google Cloud: o Google Dataflow é 
integrado nativamente com outros serviços do Google Cloud, como 
o Google Cloud Storage, BigQuery, Pub/Sub e Datastore, tornando 
mais fácil a ingestão e saída de dados desses serviços. 
 
163 
 
• Suporte a Fluxos Complexos: você pode criar pipelines de dados 
com transformações complexas, janelas temporais, agregações, 
uniões e muito mais. Isso é útil para realizar análises avançadas e 
agregações em tempo real ou em lote. 
• Monitoramento e Rastreamento: o Google Dataflow fornece 
ferramentas de monitoramento e rastreamento integradas que 
permitem acompanhar o progresso dos pipelines, verificar registros 
de execução e identificar problemas. 
• Ferramentas de Desenvolvimento: o serviço oferece suporte a 
ferramentas de desenvolvimento, como o Cloud Dataflow SDK, que 
facilita a criação e teste de pipelines de dados. 
• Integração com Apache Beam: o Google Dataflow é compatível com 
o Apache Beam, um projeto de código aberto que permite a 
portabilidade de pipelines de dados entre diferentes sistemas de 
processamento, como Apache Spark e Apache Flink. 
• Custos Otimizados: o Dataflow é dimensionado automaticamente, 
o que pode ajudar a otimizar os custos, pois você paga apenas pelos 
recursos que usa durante a execução dos pipelines. 
O Google Dataflow é uma ferramenta poderosa para processamento 
de dados em escala adequada para uma ampla variedade de casos de uso, 
incluindo análisede dados em tempo real, ETL, transformação de dados e 
muito mais. Ele simplifica a criação de pipelines de dados complexos e 
fornece integração nativa com o ecossistema do Google Cloud. 
 
 
164 
 
Figura 27 – Google Dataform. 
 
O Dataflow é executado no mesmo modelo sem servidor e 
totalmente gerenciado. O gerenciamento e o provisionamento das 
necessidades de computação podem ser deixados nas mãos do serviço 
Dataflow. 
O modelo Cloud Dataflow também aparece na rede aberta do Google 
com uma coleção de SDKs e APIs que permitem que os desenvolvedores 
projetem e implementem pipelines de processamento de dados baseados 
em fluxo ou em lote. 
O Google Dataflow não é apenas uma ferramenta de orquestração, 
mas sim uma plataforma completa para processamento de dados em escala, 
que inclui recursos de orquestração como parte de sua funcionalidade. É 
uma plataforma de processamento de dados que permite criar, implementar 
e executar pipelines de dados em tempo real e em lote. 
A orquestração de pipelines de dados é uma parte fundamental do 
Google Dataflow, mas ele oferece muito mais do que apenas isso. 
Orquestração de Pipelines: o Dataflow permite criar e orquestrar 
pipelines de dados que envolvem a extração, transformação e carga (ETL) de 
 
165 
 
dados. Você pode definir a lógica de processamento em código e 
implementá-la em um ambiente gerenciado. 
Processamento de Dados em Tempo Real e em Lote: o Dataflow 
suporta o processamento de dados tanto em tempo real quanto em lote, 
permitindo que você crie pipelines que lidam com fluxos de dados contínuos 
e grandes volumes de dados históricos. 
Programação baseada em Modelo: o Google Dataflow usa o modelo 
de programação baseado em Apache Beam, que fornece uma abstração 
unificada para expressar pipelines de dados em várias linguagens de 
programação, como Python e Java. 
Escalabilidade Automatizada: o serviço gerencia automaticamente a 
escalabilidade dos recursos de computação para atender às demandas do 
pipeline. Ele aloca recursos conforme necessário e os libera quando não 
estão mais em uso. 
Integração com Serviços do Google Cloud: o Dataflow é integrado 
nativamente com outros serviços do Google Cloud, tornando mais fácil a 
ingestão e saída de dados desses serviços. 
Suporte a Fluxos Complexos: você pode criar pipelines de dados com 
transformações complexas, janelas temporais, agregações, uniões e muito 
mais. 
Monitoramento e Rastreamento: o Google Dataflow fornece 
ferramentas de monitoramento e rastreamento integradas que permitem 
acompanhar o progresso dos pipelines, verificar registros de execução e 
identificar problemas. 
Ferramentas de Desenvolvimento: o serviço oferece suporte a 
ferramentas de desenvolvimento, como o Cloud Dataflow SDK, que facilita a 
criação e teste de pipelines de dados. 
 
166 
 
 
 
167 
 
Prefect 
O Prefect é uma solução de orquestração de fluxo de trabalho de 
dados versátil e Python-centric que simplifica a automação e o 
agendamento de tarefas relacionadas a dados em ambientes de ciência de 
dados e engenharia de dados. É uma escolha popular para equipes que 
desejam melhorar a eficiência e a confiabilidade de seus fluxos de trabalho 
de dados, garantindo que as tarefas sejam executadas de maneira confiável 
e em conformidade com as dependências especificadas. 
Prefect é uma estrutura de código aberto (open-source) de 
orquestração de fluxo de trabalho de dados (data workflow) desenvolvida 
para simplificar a automação e o agendamento de tarefas relacionadas a 
dados, desde a extração e transformação até o carregamento (ETL) e além. 
Figura 28 – Prefect. 
 
O objetivo principal do Prefect é fornecer uma maneira flexível e 
robusta de lidar com fluxos de trabalho de dados complexos e críticos para 
os negócios. Aqui estão alguns pontos-chave sobre o Prefect: 
• Orquestração de Fluxo de Trabalho de Dados: Prefect permite que 
você defina e gerencie fluxos de trabalho de dados de forma 
programática. Isso é particularmente útil em ambientes de ciência 
de dados e engenharia de dados, onde você precisa automatizar 
tarefas de ETL, treinamento de modelos, agendamento de tarefas 
etc. 
 
168 
 
• Python-Centric: o Prefect é baseado em Python e se integra bem 
com as bibliotecas e ferramentas de ecossistema de dados Python, 
como pandas, Dask, Airflow e muitas outras. 
• Controle de Dependências: o Prefect fornece um sistema de 
controle de dependências robusto para definir as relações entre 
tarefas em um fluxo de trabalho. Isso permite que você especifique 
a ordem exata em que as tarefas devem ser executadas. 
• Escalabilidade: a estrutura é projetada para ser escalável, 
permitindo que você execute fluxos de trabalho em paralelo e 
distribua tarefas em vários nós. 
• Monitoramento e Rastreamento: Prefect fornece recursos de 
monitoramento e rastreamento, permitindo que você acompanhe o 
progresso dos fluxos de trabalho, registre eventos e lide com falhas 
ou retrabalho de tarefas. 
• Facilidade de Uso: Prefect foi projetado para ser fácil de usar, com 
uma API limpa e documentação extensa. Também oferece uma 
interface de usuário (UI) para facilitar a visualização e o 
monitoramento de fluxos de trabalho. 
• Comunidade Ativa: assim como muitas outras estruturas de código 
aberto, o Prefect possui uma comunidade ativa de desenvolvedores 
e usuários que contribuem para seu desenvolvimento e fornecem 
suporte. 
• Integração com Outras Ferramentas: o Prefect pode ser integrado 
com várias ferramentas e serviços de infraestrutura, como Docker, 
Kubernetes, AWS, GCP e outros, para orquestrar tarefas em 
ambientes de nuvem e contêineres. 
 
 
169 
 
Containers 
Em vez de usar um sistema operacional para cada estrutura, como 
na virtualização, os Containers são blocos de espaços divididos pelo Docker 
em um servidor, o que possibilita a implementação de estruturas de 
Microsserviços que compartilham o mesmo sistema operacional. Porém, de 
forma limitada (conforme a demanda por capacidade). 
O fato de os Containers não terem seus próprios sistemas 
operacionais permite que eles consumam menos recursos e, com isso, sejam 
mais leves. 
Figura 29 – Contêineres. 
 
As ferramentas de orquestração de containers são aplicações em 
nuvem que permitem fazer o gerenciamento de múltiplos contêineres. O 
Kubernetes, ECS e o Docker são as principais plataformas de gerenciamento 
de contêineres. 
Seus principais objetivos são cuidar do ciclo de vida dos containers 
de forma autônoma, subindo e distribuindo, conforme nossas especificações 
ou demanda e gerenciar volumes e rede, que podem ser local ou no cloud 
provider de sua preferência. 
 
170 
 
Dessa forma, essa é uma ferramenta para viabilizar a utilização de 
Containers e Microserviços em servidores com mais facilidade, pois permite 
empacotar os aplicativos para que possam ser movimentados facilmente. 
O Docker permite, por exemplo, que uma biblioteca possa ser 
instalada em diferentes Containers sem que haja qualquer 
interdependência entre eles. Essa característica tem o objetivo de facilitar o 
gerenciamento de códigos e aplicativos. 
KubeFlow 
Kubeflow é uma plataforma de código aberto projetada para facilitar 
o desenvolvimento, treinamento, implantação e gerenciamento de modelos 
de machine learning (ML) em contêineres, usando o Kubernetes. 
O Kubernetes é uma plataforma de orquestração de contêineres 
amplamente adotada que gerencia e dimensiona aplicativos em contêineres 
em ambientes de nuvem e data centers. O Kubeflow estende as capacidades 
do Kubernetes para criar um ecossistema completo para ML. 
Aqui estão alguns dos principais componentes e recursos do 
Kubeflow: 
• Pipeline de Treinamento: o Kubeflow oferece uma maneira de criar 
pipelines de treinamento de ML usando código Python. Isso 
permite que os desenvolvedores definam e gerenciem fluxos de 
trabalho de treinamento de formaprogramática e reprodutível. 
• Gerenciamento de Recursos: o Kubeflow permite que os usuários 
aloquem e gerenciem recursos de computação, como CPUs e GPUs, 
para treinamento e inferência de modelos de ML. 
• Implantação de Modelos: os modelos de ML treinados podem ser 
implantados e servidos em contêineres gerenciados pelo Kubeflow, 
tornando a implantação e o escalonamento de modelos mais fáceis. 
 
171 
 
• Reprodutibilidade: o Kubeflow promove a reprodutibilidade em 
projetos de ML, ajudando os desenvolvedores a acompanharem as 
versões dos modelos, experimentos e configurações. 
• Monitoramento e Logging: a plataforma oferece recursos para 
monitorar o desempenho dos modelos em produção e registrar 
eventos relevantes para depuração e auditoria. 
• Integração com Ferramentas Populares: o Kubeflow é projetado 
para ser interoperável e pode ser integrado com várias ferramentas 
populares de ML, como TensorFlow, PyTorch, scikit-learn e muitas 
outras. 
• Comunidade Ativa: Kubeflow é um projeto de código aberto com 
uma comunidade ativa de desenvolvedores e contribuidores. Isso 
significa que é suportado e continuamente aprimorado pela 
comunidade de código aberto. 
• Extensibilidade: o Kubeflow é altamente extensível e 
personalizável, permitindo que as organizações construam e 
integrem suas próprias ferramentas e funcionalidades 
personalizadas. 
O Kubeflow fornece uma infraestrutura unificada e escalável para 
desenvolver, treinar e implantar modelos de machine learning em 
contêineres usando Kubernetes. Essa abordagem facilita a orquestração de 
tarefas complexas de ML e ajuda as organizações a implementarem modelos 
em produção de maneira eficiente e escalonável em ambientes de nuvem e 
de data centers. É especialmente útil para equipes de ciência de dados, 
engenheiros de ML e DevOps que desejam acelerar o ciclo de vida de 
desenvolvimento e implantação de modelos de ML. 
A plataforma Kubeflow Pipelines consiste em: 
 
172 
 
• Uma interface do usuário (UI) para gerenciar e rastrear 
experimentos, trabalhos e execuções. 
• Um mecanismo para agendar fluxos de trabalho de ML em várias 
etapas. 
• Um SDK para definir e manipular pipelines e componentes. 
• Blocos de anotações para interagir com o sistema usando o SDK. 
A seguir estão os objetivos da Kubeflow Pipelines: 
• Orquestração de ponta a ponta: habilitando e simplificando a 
orquestração de pipelines de aprendizado de máquina. 
• Experimentação fácil: tornando mais fácil para você experimentar 
inúmeras ideias e técnicas e gerenciar suas várias provações / 
experimentos. 
• Reutilização fácil: permitindo que você reutilize componentes e 
pipelines para criar rapidamente soluções completas sem precisar 
reconstruir todas as vezes. 
Figura 30 – KubeFlow Pipelines. 
 
173 
 
 
Fonte: https://towardsdatascience.com/. 
Kubeflow Pipelines é a extensão Kubeflow que fornece as 
ferramentas para criar fluxos de trabalho de aprendizado de máquina. 
Basicamente, esses fluxos de trabalho são cadeias de tarefas projetadas na 
forma de gráficos e que são representadas como Gráficos Acíclicos 
Direcionados (DAGs). Cada nó do gráfico é chamado de componente, onde 
esse componente representa uma tarefa autônoma que vive dentro de um 
contêiner docker. 
Apache Airflow 
Airflow é uma plataforma criada pelo Airbnb, escrita em Python, que 
se tornou open-source em 2015 e logo depois cedida para o Apache 
Foundation. 
O Apache Airflow é uma ferramenta de código aberto, escrita em 
python e desenvolvida pela Apache Foundation, seu objetivo é orquestrar 
pipelines de tarefas agendadas por meio de arquivos python com instruções 
de sequenciamento definidas, chamados DAGs. Pense nele como um versátil 
maestro, capaz de orquestrar diferentes músicas, de diversos tempos e com 
diferentes instrumentos de maneira igualmente ótima. 
https://towardsdatascience.com/
 
174 
 
Para seu funcionamento, o Airflow conta com alguns elementos 
chave que permitem a existência da sinergia necessária entre tarefas, 
eventos, estados e filas, todos funcionando de maneira sincronizada e de 
acordo com configurações definidas pelo usuário. A Figura abaixo 
representa, de maneira relativamente simplificada e em uma mesma 
máquina (visto que é possível configurar o Airflow de maneira escalonável) 
a estrutura de uma instância da ferramenta. 
Figura 31 – Apache Airflow. 
 
 
 
175 
 
Airflow.cfg 
O Airflow.cfg é um arquivo de configurações que descreve, 
principalmente, as conexões utilizadas para comunicação com o banco de 
dados de metadados da ferramenta, os intervalos de verificação de novos 
arquivos DAGs, e a frequência de atualização dos estados correntes de cada 
tarefa. 
Webserver 
WebrSever é um subsistema responsável pela integração e execução 
de uma interface visual para o usuário. Aqui são apresentados graficamente 
a maior parte dos elementos que podem ser utilizados pelo usuário, como 
DAGs, logs, alertas, avisos e todo tipo de monitoramento do sistema. 
Scheduler 
Este componente pode ser entendido como o “coração” do Airflow. 
No mundo musical, é possível comparar o Scheduler a um metrônomo ou ao 
compasso que dá o tempo à música. Aqui, ele é responsável pela 
temporização do sistema, resultando na execução programada de DAGs, no 
agendamento de execução de tarefas individuais das DAGs e da distribuição 
destas para diferentes Executors. 
Resumidamente, garantir o bom funcionamento deste componente 
faz parte de um grande diferencial para garantir o bom funcionamento do 
Airflow como ferramenta, já que faz a integração de quase todos os outros 
componentes/ subsistemas. 
Metadata 
Se o Scheduler pode ser considerado o “coração” do Airflow, então o 
banco de dados de metadados seria o “cérebro”. 
É neste elemento que são armazenadas todas as variáveis utilizadas 
por todos os outros componentes da ferramenta, desde usuários até 
retornos de tarefas. Faz uso de um banco de dados relacional que permite, 
 
176 
 
inclusive, a troca de informação entre tarefas, principal causa de problemas 
de má utilização do Airflow. 
Executors 
Subsistema responsável pela execução das tarefas programadas 
pelo Scheduler, que estão localizadas na fila (queue) deste subsistema (na 
atual representação). 
O Airflow permite a execução de diferentes tipos de tarefas através 
de operadores de diferentes naturezas, como o PythonOperator, para 
execução de scripts Python, o DockerOperator, para trabalho com containers 
do Docker ou até mesmo o BashOperator, para a execução de comandos 
bash. 
Essa versatilidade permite que cada tarefa possa ser executada 
isoladamente dentro do ambiente específico definido como Worker. Todas 
essas funções são definidas (para a arquitetura local apresentada) e 
executadas dentro de um Executor, que ao fim comunica com o banco de 
metadados para informar o retorno das ações. 
BashOperator 
Um script Bash é um arquivo de texto que contém uma sequência de 
comandos escritos na linguagem de script Bash. O Bash é um interpretador 
de linha de comando amplamente utilizado em sistemas Unix-like, incluindo 
o Linux e o macOS. Ele é uma extensão do shell Unix padrão (sh) e oferece 
recursos adicionais para automação, scripting e execução de tarefas no 
sistema operacional. 
O BashOperator é um operador (task) no Apache Airflow, que permite 
executar tarefas de shell ou comandos Bash em um ambiente controlado 
pelo Airflow. 
 
177 
 
Ele é usado para integrar tarefas que envolvem scripts ou comandos 
de linha de comando em seus fluxos de trabalho do Airflow.
 
 
 
9 
 
179 
 
Capítulo 9. Orquestração de Dados 
Instalação do Apache Airflow 
Para esta instalação, primeiramente você precisa instalar/subir uma 
instância do Apache Airflow. Há a opção de usar nuvem ou instalar 
localmente: 
• Criação de Instância do Apache Airflow no Google Cloud. 
• Instalação Local. 
• Instalação Localem Container – Docker. 
Criação de Instância do Apache Airflow no Google Cloud 
Esta é uma forma mais tranquila de se ter o Apache Airflow. Se você 
ainda não tem, irá precisar de uma conta no Google Cloud para receber 
créditos que permitirão a prática. O Google Cloud oferece US$ 300 para teste 
gratuito. Conheça o programa de gratuidade do Google Cloud. O teste 
gratuito se aplica à primeira conta de faturamento criada. 
O Google Cloud é uma plataforma de computação em nuvem 
oferecida pela Google. Ela fornece uma ampla gama de serviços de 
computação, armazenamento, análise de dados, aprendizado de máquina, 
redes e outros recursos para ajudar indivíduos e empresas a executarem 
suas operações de TI de forma eficiente e escalável na nuvem. 
I. Crie um Projeto no Google Cloud 
Se você ainda não possui um projeto no Google Cloud, será 
necessário criar um. 
 
https://cloud.google.com/free/docs/gcp-free-tier?hl=pt-br&_gl=1*1v5xlol*_ga*NzY2OTQ5MTE4LjE2OTIwMjY0MDg.*_ga_NRWSTWS78N*MTY5MjAyNjQwOC4xLjAuMTY5MjAyNjQwOS4wLjAuMA..
 
180 
 
II. Create a Service Account 
No projeto criado, você precisará criar uma Conta de Serviço para que 
sua instância do Airflow possa acessar os diferentes serviços do GCP em seu 
projeto. 
Primeiro, vá para IAM & Admin e depois Contas de serviço. 
 
Em seguida, digite o nome da conta de serviço e clique em Criar. 
 
 
181 
 
 
III. Criar um ambiente do Google Composer 
Um ambiente do Cloud Composer é uma instalação autônoma do 
Apache Airflow implantada em um cluster gerenciado do Google Kubernetes 
Engine. É possível criar um ou mais ambientes em um único projeto do 
Google Cloud. 
IV. Criar um ambiente do Cloud Composer 
O Cloud Composer é um serviço totalmente gerenciado de 
orquestração de fluxos de trabalho criado no Apache Airflow. Com a 
automação do Cloud Composer, é possível criar ambientes do Airflow e usar 
as ferramentas nativas dele, como a interface da Web avançada do Airflow e 
as ferramentas de linha de comando. Assim, você se concentra nos fluxos de 
trabalho, e não na infraestrutura. 
Por padrão, os ambientes do Cloud Composer usam a conta de 
serviço padrão do Compute Engine gerenciada pelo Google. Recomendamos 
que você crie uma conta de serviço gerenciada pelo usuário que tenha um 
papel específico para o Cloud Composer e use-a nos seus ambientes. 
O tempo aproximado para criar um ambiente é de 25 minutos. 
Durante a criação do ambiente, você especifica uma conta de serviço. Os nós 
no cluster do ambiente são executados como esta conta. 
Antes de começar, ative a API Cloud Composer. 
Para ativar a API Cloud Composer, vá em: 
 
182 
 
• https://cloud.google.com/composer/docs/how-
to/managing/enabling-service?hl=pt-br 
Localize a parte de ativação de API do Cloud Composer. 
 
As APIs ativas necessárias são: 
• Cloud Build API. 
• Cloud Functions API. 
• Cloud Composer API. 
Você pode configurar o ambiente de Cloud Shell, se desejar, e 
continuar a configuração pelo Cloud Shell. Nós iremos continuar pela 
interface gráfica, mais fácil e intuitiva. 
Procure a opção pela ajuda: Abrir o Cloud Shell. 
 
Procure pelo campo de ajuda do Google Cloud “Composer” e abra a 
orquestração “Composer”. 
https://cloud.google.com/composer/docs/how-to/managing/enabling-service?hl=pt-br
https://cloud.google.com/composer/docs/how-to/managing/enabling-service?hl=pt-br
 
183 
 
 
Crie um “Composer1” compatível com Airflow 1 e Airflow 2. 
 
 
Preencha os campos abaixo: 
 
184 
 
 
 
185 
 
Você pode marcar a opção de usar a API Beta. 
 
Depois é só clicar no link do Composer criado para acessar o 
ambiente. 
 
 
Clique em Interface do Airflow e você terá o Airflow acessível. 
 
Alerta: você recebe 300 dólares em créditos, que podem ser 
facilmente consumidos ao longo do tempo. Por isso, ao terminar o trabalho, 
desabilite a instância que contém o Apache Airflow para evitar cobranças 
futuras. 
I. Instalação Local: 
 
186 
 
A instalação do Apache Airflow localmente envolve alguns passos. O 
processo básico de instalação se dá pelo uso do pip, que é o gerenciador de 
pacotes Python. Certifique-se de que você possui o Python instalado em sua 
máquina antes de começar. Aqui estão os passos: 
II. Crie um Ambiente Virtual (Opcional, mas recomendado): 
Criar um ambiente virtual é uma prática recomendada para isolar as 
dependências do projeto. Para criar um ambiente virtual, abra o terminal e 
navegue até o diretório onde deseja criar o ambiente. Em seguida, execute 
o seguinte comando: 
python -m venv my_airflow_env 
 
Isso criará um ambiente virtual chamado my_airflow_env. Para ativá-
lo, use: 
No Windows: 
my_airflow_env\Scripts\activate 
 
No macOS e Linux: 
source my_airflow_env/bin/activate 
 
III. Instale o Apache Airflow: 
Com o ambiente virtual ativado, use o comando pip para instalar o 
Apache Airflow: 
pip install apache-airflow 
 
187 
 
 
 
 
188 
 
IV. Inicialize o Banco de Dados: 
O Airflow usa um banco de dados para armazenar metadados sobre 
DAGs, tarefas, execuções etc. Você precisará inicializar o banco de dados: 
airflow db init 
 
V. Inicie o Web Server do Airflow: 
Inicie o servidor da web Airflow para acessar o painel de controle: 
airflow webserver --port 8080 
 
VI. Inicie o Scheduler: 
Abra outro terminal e inicie o scheduler, responsável por agendar e 
executar tarefas: 
airflow scheduler 
 
VII. Acesse o Painel Web: 
Abra um navegador e acesse http://localhost:8080. Isso o levará ao 
painel de controle do Airflow, onde poderá criar e monitorar suas DAGs. 
Lembre-se de que esta é uma configuração básica para uso local. 
 
 
189 
 
Instalação Local em Contêiner – Docker 
A instalação do Apache Airflow através do Docker é uma abordagem 
popular, pois facilita a configuração e execução do Airflow em diferentes 
ambientes sem a necessidade de configurar dependências complexas 
manualmente. Aqui estão os principais passos para instalar o Apache Airflow 
usando o Docker. 
I. Criar uma instância do WSL 2 no Windows. 
Verificar Requisitos: 
Verifique se você está executando pelo menos o Windows 10 versão 
1903 com compilação do sistema operacional 18362 ou superior. 
Certifique-se de que a virtualização esteja habilitada na BIOS do seu 
computador. 
Ativar o WSL: 
Abra o "Painel de Controle" e acesse "Programas" > "Ativar ou 
desativar recursos do Windows". 
Marque a opção "Plataforma de Máquina Virtual" e clique em "OK". 
Reinicie o computador quando solicitado. 
Instalar uma Distribuição Linux via Microsoft Store: 
Abra a "Microsoft Store" e procure por uma distribuição Linux 
compatível (por exemplo, Ubuntu). 
Escolha uma distribuição, clique em "Obter" e siga as instruções para 
instalá-la. 
 
190 
 
 
Configurar a Distribuição Linux: 
Após a instalação, execute a distribuição Linux recém-instalada no 
menu Iniciar. 
Na primeira vez que você executa a distribuição, será solicitado que 
configure um nome de usuário e senha. 
Atualizar para WSL 2: 
Abra o PowerShell como administrador. 
Execute o comando: wsl --set-version <Nome da Distribuição> 2, 
substituindo <Nome da Distribuição> pelo nome da distribuição Linux que 
você instalou. 
Aguarde o processo de atualização. As novas distribuições já estão 
no padrão da wsl 2. 
Definir WSL 2 como Padrão: 
Execute o comando no PowerShell: wsl --set-default-version 2. 
Instalar o Kernel Linux: 
Baixe e instale a atualização do kernel do Linux para o WSL 2. Veja 
as orientações no link: https://aka.ms/wsl2kernel. 
https://aka.ms/wsl2kernel
 
191 
 
Basicamente, execute no terminal o comando: wsl.exe --update 
 
Verificar a Versão do WSL: 
Execute o comando no PowerShell: wsl --list --verbose para ver as 
distribuições instaladas e suas versões. A coluna "Versão" deve ser "2". 
 
Utilizar a Distribuição Linux: 
Agora você pode iniciar a distribuição Linux via menu Iniciar, 
PowerShell ou Terminal,digitando o comando wsl ou o nome da distribuição 
(por exemplo, ubuntu). 
II. Instalação do Docker 
Se você ainda não tem o Docker instalado, precisará instalá-lo 
primeiro. Você pode baixar o Docker Desktop para Windows ou macOS, ou 
instalar o Docker Engine em sistemas Linux. Acesse o site oficial do Docker 
para obter instruções detalhadas de instalação. No caso do Windows, o 
Docker funciona na versão home, porém é necessário utilizar o WSL 2 
(Subsistema Windows para Linux 2) para criar um ambiente de execução 
para contêineres. O Docker Desktop pode usar o WSL 2. Isso não requer uma 
máquina virtual tradicional, mas WSL 2 é uma tecnologia que fornece um 
ambiente semelhante a uma VM para a execução de contêineres. 
III. Preparação dos Arquivos de Configuração 
Antes de iniciar um contêiner Docker com o Apache Airflow, é 
recomendável preparar alguns arquivos de configuração. Você pode criar um 
 
192 
 
diretório para armazenar esses arquivos e personalizá-los conforme 
necessário. 
IV. Arquivo docker-compose.yaml 
Crie um arquivo yaml airflow-local com o seguinte conteúdo: 
version: '3' 
x-airflow-common: 
 &airflow-common 
 image: apache/airflow:2.0.0 
 environment: 
 - AIRFLOW__CORE__EXECUTOR=LocalExecutor 
 - 
AIRFLOW__CORE__SQL_ALCHEMY_CONN=postgresql+psycopg2://postgres:postgres@pos
tgres:5432/airflow 
 - 
AIRFLOW__CORE__FERNET_KEY=FB0o_zt4e3Ziq3LdUUO7F2Z95cvFFx16hU8jTeR1ASM= 
 - AIRFLOW__CORE__LOAD_EXAMPLES=False 
 - AIRFLOW__CORE__LOGGING_LEVEL=INFO 
 volumes: 
 - ./dags:/opt/airflow/dags 
 - ./airflow-data/logs:/opt/airflow/logs 
 - ./airflow-data/plugins:/opt/airflow/plugins 
 - ./airflow-data/airflow.cfg:/opt/airlfow/airflow.cfg 
 depends_on: 
 - postgres 
 
services: 
 postgres: 
 image: postgres:12 
 environment: 
 
193 
 
 - POSTGRES_USER=postgres 
 - POSTGRES_PASSWORD=postgres 
 - POSTGRES_DB=airflow 
 - POSTGRES_PORT=5432 
 ports: 
 - "5432:5432" 
 
 airflow-init: 
 << : *airflow-common 
 container_name: airflow_init 
 entrypoint: /bin/bash 
 command: 
 - -c 
 - airflow users list || ( airflow db init && 
 airflow users create 
 --role Admin 
 --username airflow 
 --password airflow 
 --email airflow@airflow.com 
 --firstname airflow 
 --lastname airflow ) 
 restart: on-failure 
 
 airflow-webserver: 
 << : *airflow-common 
 command: airflow webserver 
 ports: 
 - 8080:8080 
 container_name: airflow_webserver 
 
194 
 
 restart: always 
 
 airflow-scheduler: 
 << : *airflow-common 
 command: airflow scheduler 
 container_name: airflow_scheduler 
 restart: always 
V. Iniciar o Apache Airflow: 
Abra um terminal e navegue para o diretório onde você criará a sua 
estrutura de diretórios do Airflow. 
Por exemplo, coloque o arquivo yml do compose no diretório de 
usuário. 
 
Abra o terminal e vá para o diretório de usuário onde estão os 
arquivos airflow-local.yml e o exemplodag.py. 
Execute o seguinte comando: 
docker-compose -f airflow-local.yml up -d 
Após a criação dos contêineres, vá no Docker Desktop e confira se 
estão rodando. 
Você também pode checar pelo terminal: 
 
195 
 
docker container ps -a 
Você também pode checar pelo terminal: 
 
VI. Acesso ao Painel Web: 
Depois que o contêiner estiver em execução, você pode acessar o 
painel de controle do Airflow no seu navegador. 
http://localhost:8080 
Lembre-se de substituir 'mysecretkey' e 'myfernetkey' por chaves 
reais e seguras. Além disso, você pode ajustar outras configurações no 
arquivo yaml conforme necessário. 
 
Usuário e senha de entrada foram definidos no arquivo yml: 
airflow/airflow. 
VII. Subir DAGs no Aiflow do Docker: 
Para isso, basta colocar os arquivos das DAGs em Python no diretório 
dags que está abaixo do local onde você escolheu para seu Airflow. 
 
196 
 
 
O DAG leva um tempo para aparecer no Apache Airflow. Saia do 
Airflow (logout) e entre novamente (login), ou pare o contêiner e o inicie 
novamente. 
Programando Execuções de Pipeline 
No Apache Airflow, você pode programar execuções de pipelines 
(fluxos de trabalho) usando objetos chamados DAGs (Directed Acyclic 
Graphs). DAGs são representações dos seus fluxos de trabalho e podem ser 
programados para serem executados em intervalos específicos, horários ou 
com base em gatilhos de eventos. 
Crie um arquivo Python que defina um DAG. Um DAG é um objeto 
Python que descreve o fluxo de trabalho que você deseja executar. Você 
pode usar o Python para definir tarefas, dependências entre tarefas e as 
regras de programação. 
Condicionais 
No Apache Airflow, as condicionais são uma maneira de controlar o 
fluxo de execução de tarefas em um DAG (Directed Acyclic Graph) com base 
em condições específicas. Elas permitem que você tome decisões durante a 
execução do fluxo de trabalho, determinando quais tarefas serão 
executadas com base em valores ou resultados de tarefas anteriores. 
Existem duas principais formas de aplicar condicionais no Apache 
Airflow: 
• BranchPythonOperator: esta é uma tarefa especializada que 
avalia uma função Python definida por você para decidir qual 
tarefa seguir em um DAG. A função Python deve retornar o ID da 
 
197 
 
tarefa de destino (ou seja, a próxima tarefa a ser executada) com 
base em alguma lógica condicional. 
• TriggerDagRunOperator: esta é outra maneira de aplicar 
condicionais no Airflow. O TriggerDagRunOperator permite que 
você acione a execução de um DAG secundário com base em 
condições. Você pode configurar este operador para acionar a 
execução de um DAG secundário quando uma determinada 
condição for atendida. 
Paralelismo 
No Apache Airflow, o paralelismo refere-se à capacidade de executar 
várias tarefas ou fluxos de trabalho em paralelo, ou seja, ao mesmo tempo. 
O Airflow permite a execução paralela de tarefas e fluxos de trabalho, o que 
é fundamental para a eficiência e a escalabilidade das operações de 
orquestração de dados. 
Existem duas formas principais de alcançar o paralelismo no Apache 
Airflow: 
• Execução Paralela de Tarefas: o Airflow permite que as tarefas 
dentro de um DAG sejam executadas em paralelo sempre que 
possível. Isso significa que as tarefas que não têm 
dependências umas das outras e podem ser executadas 
simultaneamente, economizando tempo e recursos. Você 
pode configurar a concorrência (ou seja, o número máximo de 
tarefas em execução ao mesmo tempo) para controlar o 
paralelismo em nível de tarefa. 
• Execução Paralela de Fluxos de Trabalho (DAGs): você 
também pode alcançar o paralelismo executando múltiplos 
DAGs em paralelo. Cada DAG é uma unidade independente de 
 
198 
 
trabalho e pode ser executado simultaneamente com outros 
DAGs, desde que não haja conflitos de recursos. 
Integrações para Entregas 
As integrações para entrega no Apache Airflow referem-se ao uso de 
operadores, conectores e extensões para integrar fluxos de trabalho do 
Airflow com sistemas externos ou serviços que são parte do processo de 
entrega de software (DevOps) e implantação contínua (CI/CD). Essas 
integrações facilitam a automação e a orquestração de tarefas relacionadas 
à entrega de software, como a implantação em servidores, testes 
automatizados, notificações e muito mais. 
Aqui estão algumas das integrações comuns para entrega no 
Apache Airflow: 
Operador de SSH: o operador SSH permite a execução de comandos 
ou scripts em servidores remotos por meio de SSH. Isso pode ser útil para a 
implantação de software em servidores de produção ou para a execução de 
tarefas de configuração. 
Operador Kubernetes: o operador Kubernetes permite a interação 
com clusters Kubernetes, o que é útil para implantar e gerenciar aplicativos 
em contêineres. 
Operador Docker: o operador Docker permite a criação, execução e 
gerenciamento de contêineres Docker a partir de tarefas do Airflow. Isso 
pode ser útil para orquestrar processos que dependem de contêineres. 
Conectores para Ferramentasde CI/CD: existem conectores e 
extensões que facilitam a integração do Apache Airflow com ferramentas 
populares de CI/CD, como Jenkins, Travis CI, CircleCI e GitLab CI/CD. Isso 
permite que você automatize e agende tarefas de construção, teste e 
implantação como parte de seu fluxo de trabalho de entrega. 
 
199 
 
Operador HTTP: o operador HTTP permite que você faça solicitações 
HTTP a serviços externos ou APIs, o que pode ser útil para interagir com 
sistemas de integração contínua, ferramentas de monitoramento ou 
serviços de notificação. 
Operadores de E-mail e Notificação: o Apache Airflow oferece 
operadores para envio de e-mails e notificações por meio de serviços como 
Slack, Microsoft Teams ou outros meios de comunicação. Isso é útil para 
alertas, notificações de sucesso ou falha e comunicação entre equipes. 
Operadores de Monitoramento: você pode integrar o Airflow com 
ferramentas de monitoramento, como o Prometheus ou o Grafana, usando 
operadores específicos para coletar métricas e dados de monitoramento 
durante a execução de tarefas. 
Operador de Banco de Dados: operadores de banco de dados 
permitem que você se conecte a bancos de dados para executar consultas 
SQL ou realizar operações de ETL, o que pode ser relevante para a entrega 
de software que envolve a manipulação de dados. 
Essas são apenas algumas das integrações comuns para entrega no 
Apache Airflow. A escolha das integrações a serem usadas depende dos 
requisitos específicos do seu processo de entrega de software e das 
ferramentas que você utiliza em seu ambiente de desenvolvimento e 
implantação. O Apache Airflow é altamente configurável e extensível, o que 
o torna uma escolha flexível para automatizar tarefas relacionadas à entrega 
de software.
 
 
 
10 
 
 
201 
 
 
Capítulo 10. Telemetria para Pipeline de Dados 
Conceitos de Telemetria em Pipeline de Dados 
A telemetria em um pipeline de dados se refere à coleta, medição e 
análise de dados operacionais e de desempenho para monitorar e gerenciar 
o fluxo de dados ao longo do pipeline. Ela desempenha um papel 
fundamental na garantia de que o pipeline de dados esteja funcionando 
conforme o esperado, identificando problemas e melhorando a eficiência do 
processo de ingestão, processamento e entrega de dados. 
Em um pipeline de dados, a telemetria é fundamental para garantir 
a confiabilidade, o desempenho e a integridade dos seus dados. Ela fornece 
insights valiosos que ajudam a identificar problemas, otimizar processos e 
tomar decisões informadas sobre o funcionamento do pipeline de dados. É 
uma parte essencial da operação de qualquer sistema de processamento de 
dados em larga escala. 
Aqui estão alguns conceitos importantes relacionados à telemetria 
em um pipeline de dados: 
Coleta de Dados: a coleta de dados de telemetria envolve a captura 
de informações relevantes em todo o pipeline de dados. Isso pode incluir 
métricas de desempenho, logs de eventos, informações de erros e 
metadados sobre os dados que estão sendo processados. As fontes de 
dados de telemetria podem variar e incluir sistemas de processamento de 
dados, serviços de infraestrutura, aplicativos de negócios e muito mais. 
Monitoramento em Tempo Real: o monitoramento em tempo real é a 
prática de acompanhar continuamente o pipeline de dados enquanto ele 
está em execução. Isso permite a detecção imediata de problemas, como 
 
 
202 
 
 
atrasos na ingestão, falhas no processamento ou interrupções na entrega. 
O monitoramento em tempo real é essencial para a detecção precoce de 
problemas e a tomada de ações corretivas imediatas. 
Métricas de Desempenho: métricas de desempenho incluem 
informações como taxa de ingestão, taxa de processamento, latência, uso 
de recursos e muito mais. Essas métricas permitem avaliar o quão eficiente 
e rápido o pipeline de dados está funcionando. Elas podem ser usadas para 
identificar gargalos de desempenho e otimizar o pipeline. 
Logs de Eventos: os logs de eventos registram informações 
detalhadas sobre o funcionamento do pipeline de dados. Isso inclui 
informações sobre cada etapa do processo, eventos de erro, informações de 
diagnóstico e registros de auditoria. Os logs de eventos são valiosos para a 
solução de problemas e a investigação de problemas. 
Alertas e Notificações: os sistemas de telemetria geralmente 
incluem mecanismos de alerta que notificam automaticamente as equipes 
de operações ou engenheiros quando ocorrem problemas críticos ou 
anomalias no pipeline de dados. Isso permite uma resposta rápida a eventos 
adversos. 
Análise e Visualização de Dados: a análise de dados de telemetria 
envolve a criação de painéis de controle e relatórios que fornecem insights 
sobre o desempenho e o estado do pipeline de dados. A visualização de 
dados facilita a compreensão das métricas e tendências ao longo do tempo. 
Rastreamento de Metadados: o rastreamento de metadados envolve 
a captura de informações sobre os dados em si, como origem, destino, 
transformações aplicadas e outros detalhes relevantes. Isso é fundamental 
para garantir a qualidade dos dados e a rastreabilidade ao longo do pipeline. 
 
 
203 
 
 
Segurança e Conformidade: a telemetria também desempenha um 
papel na segurança e conformidade dos dados. Ela pode incluir a 
monitorização de acessos não autorizados, auditorias de conformidade e 
detecção de atividades suspeitas. 
Retenção de Dados de Telemetria: a retenção adequada dos dados 
de telemetria é importante para a análise histórica e investigação de 
problemas. Você deve definir políticas de retenção de dados que 
determinem por quanto tempo os dados de telemetria são armazenados. 
Coleta de Métricas – Prometheus 
O Prometheus é uma popular ferramenta de código aberto para 
coleta, armazenamento e consulta de métricas. Ele é amplamente usado 
para monitorar sistemas e serviços em ambientes de nuvem e em 
infraestruturas de grande escala. 
Aqui está uma visão geral de como o Prometheus coleta métricas: 
Coleta de Métricas de Alvos: o Prometheus é projetado para coletar 
métricas de diferentes tipos de alvos, como aplicativos, serviços, servidores 
e dispositivos de rede. Isso é feito usando um mecanismo chamado de 
"scraping" (raspagem). O Prometheus se conecta a esses alvos e 
periodicamente coleta métricas exportadas por eles. 
Exportadores (Exporters): para coletar métricas de aplicativos e 
serviços que não têm suporte nativo ao Prometheus, você pode usar 
exportadores. Os exportadores são pequenos programas que transformam 
métricas específicas em um formato compatível com o Prometheus. Por 
exemplo, o "Node Exporter" coleta métricas de sistemas Unix, enquanto o 
"Blackbox Exporter" verifica a disponibilidade de serviços. 
 
 
204 
 
 
Armazenamento Local de Métricas: o Prometheus armazena as 
métricas coletadas em um banco de dados de séries temporais locais. Esse 
armazenamento é altamente eficiente e otimizado para métricas de séries 
temporais. Os dados são armazenados em um formato compacto que 
permite consultas rápidas e eficientes. 
Consulta e Visualização de Métricas: os usuários podem consultar as 
métricas armazenadas no Prometheus usando a linguagem de consulta 
PromQL (Prometheus Query Language). Isso permite que você crie 
consultas complexas para analisar métricas, calcular agregações e criar 
gráficos e painéis personalizados. 
Alertas e Notificações: o Prometheus também inclui um sistema de 
alertas que permite definir regras de alerta com base nas métricas coletadas. 
Você pode configurar alertas para notificar automaticamente quando uma 
métrica atinge um limiar específico ou quando ocorrem eventos adversos. 
Coleta de Métricas Automatizada: o Prometheus oferece um 
mecanismo de descoberta automática que permite que você encontre 
automaticamente alvos de coleta de métricas em seu ambiente. Isso é útil 
em ambientes dinâmicos, como contêineres e orquestradoresde 
contêineres (por exemplo, Kubernetes). 
Integração com Grafana e Outras Ferramentas: o Prometheus é 
frequentemente integrado ao Grafana, uma ferramenta de visualização e 
painel de código aberto. Essa integração permite criar painéis 
personalizados e gráficos de métricas para monitorar sistemas e serviços. 
Escalabilidade: o Prometheus é projetado para ser altamente 
escalável e pode ser usado em implantações de grande escala. Ele suporta a 
federação, que permite que várias instâncias do Prometheus compartilhem 
métricas entre si, facilitando o monitoramento distribuído. 
 
 
205 
 
 
O Prometheus é uma poderosa ferramenta de coleta de métricas que 
desempenha um papel fundamental na monitorização de sistemas e 
serviços. Ele permite que você colete, armazene, consulte e alerte com 
eficiência com base em métricas operacionais, facilitando a detecção de 
problemas e a análise de desempenho em seus ambientes de TI. 
Passos para usar o Prometheus 
Instrumentação do Pipeline: 
• Em cada etapa do pipeline, instrumente o código para gerar 
métricas relevantes. Isso pode incluir métricas de taxa de 
ingestão, latência de processamento, erros encontrados, 
tempo de resposta e muito mais. 
• Use bibliotecas ou clientes Prometheus específicos para sua 
linguagem de programação para exportar essas métricas em 
um formato que o Prometheus possa coletar. 
Configuração do Prometheus: 
• Configure o Prometheus para coletar métricas dos pontos de 
extremidade (endpoints) dos componentes do pipeline. Isso é 
feito através da configuração do arquivo de configuração do 
Prometheus (geralmente chamado de prometheus.yml). 
• Adicione os alvos de coleta (endpoints dos componentes do 
pipeline) à configuração do Prometheus. 
• Configure regras de alerta no Prometheus, se necessário, para 
monitorar métricas críticas do pipeline. 
 
 
 
206 
 
 
Coleta de Métricas: 
• O Prometheus começará a coletar métricas dos componentes 
do pipeline de acordo com a configuração definida. 
Consultas e Visualização: 
• Use a linguagem PromQL para criar consultas que ajudem a 
monitorar e entender o desempenho do pipeline. Por exemplo, 
você pode criar consultas para verificar a taxa de ingestão 
atual, a latência de processamento ou a contagem de erros. 
• Configure painéis e gráficos no Grafana (se estiver usando 
Grafana para visualização) para exibir métricas importantes 
em tempo real. 
Alertas e Notificações: 
• Configure alertas no Prometheus com base em métricas 
críticas. Por exemplo, você pode criar um alerta que notifica 
quando a taxa de erro no pipeline ultrapassa um determinado 
limiar. 
• Configure integrações de notificação (como Slack, e-mail etc.) 
para receber alertas quando ocorrerem problemas no pipeline. 
Aprimoramento contínuo: 
• Monitore regularmente as métricas do pipeline e use os 
insights obtidos para otimizar o desempenho e a eficiência do 
pipeline. 
• Adicione mais métricas e alertas à medida que seu pipeline 
evolui e novos componentes são adicionados. 
 
 
207 
 
 
Lembrando que o exemplo acima é uma simplificação de um pipeline 
de dados real. A instrumentação e a configuração específicas dependerão do 
seu ambiente e das necessidades de monitoramento. O Prometheus é uma 
ferramenta versátil que pode ser adaptada para monitorar pipelines de 
dados complexos em ambientes de produção. 
Figura 32 – Prometheus. 
 
Desenvolvido originalmente pela SoundCloud, tornou-se código 
aberto e foi aceito como segundo projeto na Cloud Computing Foundation 
(CNCF), em 2016. O Prometheus é uma ferramenta cada vez mais popular 
que fornece monitoramento e alertas em aplicações e servidores. 
Os principais componentes do Prometheus incluem o servidor 
Prometheus (que lida com descoberta de serviços, recuperação e 
armazenamento de métricas de aplicações monitoradas, análise de dados 
de séries temporais usando a linguagem de consulta PromQL), um modelo 
 
 
208 
 
 
de métricas de dados, um simples built-in GUI e suporte nativo ao Grafana. 
Componentes opcionais adicionais incluem um gerenciador de alertas (no 
qual os alertas podem ser definidos na linguagem de consulta) e um gateway 
de envio útil para monitorar aplicações de curta duração. 
Geralmente, as ferramentas de monitoramento de aplicações 
capturam indicadores e métricas por meio de um desses três métodos: 
Instrumentação: adicionando código personalizado ao código-fonte 
da aplicação monitorada. 
Agentes: adicionando código especial de propósito geral ao 
ambiente de aplicações para capturar automaticamente as métricas padrão. 
Espionagem: usando interceptores ou taps de rede para monitorar 
chamadas ou fluxo de dados entre sistemas. 
O Prometheus dá suporte ao uso de uma combinação de 
instrumentação e agentes (chamados de "exportadores"). Para 
instrumentação, é necessário acesso ao código-fonte da aplicação e com 
isso possibilita-se a captura de métricas personalizadas. O Prometheus 
também é agnóstico em linguagem de programação e possui bibliotecas de 
cliente oficiais que são compatíveis e estão disponíveis para Go, Java / Scala, 
Python e Ruby. Muitas bibliotecas não oficiais também estão disponíveis 
(LISP etc.), sendo possível ainda desenvolver suas próprias bibliotecas. 
O Prometheus armazena métricas na forma de dados de séries 
temporais, de modo que as métricas incluem streams de valores do tipo 
timestamp com milissegundos (float de 64 bits). Cada métrica possui um 
nome (uma string) e usa uma convenção de nomenclatura que inclui o nome 
do que está sendo monitorado, o tipo lógico e as unidades de medida. Cada 
métrica também tem um conjunto de pares chave/valor (as dimensões 
 
 
209 
 
 
rotuladas). Por exemplo, uma métrica denominada http_requests_total 
poderia incluir rótulos para "método" ("GET", "PUT") e para "handler" (por 
exemplo: "/login", "/search"). O Prometheus também adiciona alguns rótulos 
às métricas automaticamente, incluindo: 
• job: o nome do job configurado ao qual o target pertence. 
• Instância: a parte <host>: <porta> da URL extraída do destino. 
Ele oferece os quatro tipos de métricas: 
1. Contador: um contador é útil para valores incrementais (os valores 
podem ser redefinidos para zero no momento da reinicialização). 
2. Medidor: um medidor pode ser usado para contagens e valores que 
que podem aumentar e diminuir. 
3. Histograma: um histograma mostra observações, como tempo de 
solicitação ou tamanhos de resposta. Ele conta essas observações 
em intervalos possíveis que podem ser configurados, além de 
oferecer a soma de todos os valores observados. 
4. Resumo: assim como um histograma, um resumo de amostras de 
observações oferece uma contagem total e a soma dos valores 
observados, ao mesmo tempo em que calcula quantos que são 
configuráveis em uma janela de tempo variável. 
Dashboards – Grafana 
O Grafana é uma plataforma de código aberto que é comumente 
usada para monitorar e visualizar dados em tempo real de uma variedade de 
fontes, incluindo pipelines de dados. Ele fornece recursos avançados de 
visualização e painéis personalizáveis que ajudam as equipes de operações 
e engenheiros a acompanhar o desempenho, a integridade e a eficiência de 
 
 
210 
 
 
seus pipelines de dados. Aqui estão alguns dos principais aspectos do 
Grafana em relação ao monitoramento de pipelines de dados: 
Visualização de Métricas em Tempo Real: o Grafana permite criar 
painéis de controle personalizados que exibem métricas em tempo real de 
diferentes componentes de seu pipeline de dados. Você pode criar gráficos, 
tabelas, medidores, mapas de calor e outros tipos de visualizações para 
representar métricas de maneira significativa. 
Suporte a Diversas Fontes de Dados: o Grafana é altamente flexível 
e pode se integrar a uma variedade de fontes de dados, incluindo 
Prometheus, InfluxDB, Elasticsearch, MySQL, PostgreSQL e muitos outros. 
Isso significa que vocêpode coletar métricas de várias partes de seu 
pipeline de dados e consolidá-las em um único painel. 
Alertas Personalizados: você pode configurar alertas no Grafana 
para ser notificado automaticamente quando métricas críticas excederem 
limites predefinidos. Isso é útil para detectar problemas rapidamente e 
tomar medidas corretivas. 
Exploração de Dados Interativa: o Grafana permite explorar dados 
em detalhes, permitindo que você ajuste e refine consultas e visualizações 
de métricas. Isso é útil para investigar problemas e tendências em seus 
pipelines de dados. 
Integração com Outras Ferramentas: o Grafana é frequentemente 
usado em conjunto com outras ferramentas de monitoramento, como o 
Prometheus, para criar um sistema de monitoramento completo. Ele 
também suporta integrações com serviços de notificação, como Slack e e-
mail, para alertas personalizados. 
 
 
211 
 
 
Painéis Personalizáveis: você pode criar painéis personalizados que 
atendam às necessidades específicas de monitoramento de seus pipelines 
de dados. Cada painel pode conter várias visualizações e widgets. 
Suporte a Timeseries: o Grafana é especialmente eficaz na exibição 
e análise de séries temporais, o que é importante para monitorar o 
desempenho de pipelines de dados que lidam com dados em fluxo 
constante. 
Compartilhamento e Colaboração: os painéis do Grafana podem ser 
compartilhados e colaborados com membros da equipe. Isso permite que 
várias pessoas acessem e colaborem na monitorização dos pipelines de 
dados. 
Personalização e Extensibilidade: o Grafana é altamente 
personalizável e extensível. Você pode criar seus próprios plugins e temas 
para atender às necessidades específicas de seu ambiente. 
Figura 33 – Grafana. 
 
Monitoramento de Pipelines 
O monitoramento de um pipeline de dados é fundamental para 
garantir que ele funcione de maneira confiável, eficiente e segura. A 
ausência de monitoramento adequado pode resultar em falhas, perda de 
 
 
212 
 
 
dados, problemas de qualidade e impactos negativos nos negócios. 
Portanto, é uma prática essencial em qualquer ambiente que dependa do 
processamento de dados para operações críticas. 
Se você utiliza o Airflow como ferramenta de orquestração, o Grafana 
pode ser uma boa opção para um monitoramento mais visual e em tempo 
real dos processos que rodam no Airflow. 
• Docker — Docker Install. 
• Grafana — Ferramenta de monitoramento. 
• Apache Airflow — Data pipeline. 
• Postgresql — Database onde estão as informações do meu 
airflow. 
 
 
 
213 
 
 
Referências 
ACADEMIA IN. O que é e qual a importância de aprender sobre modelagem 
de dados? 14 jul. 2021. Disponível em: <https://blog.academiain1.com.br/o-
que-e-e-qual-a-importancia-de-aprender-sobre-modelagem-de-dados/>. 
Acesso em: 06 set. 2023. 
APACHE AIRFLOW. Página Inicial. Disponível em: 
<https://airflow.apache.org/>. Acesso em: 11 set. 2023. 
BANU, Afshan; PEDAMKAR, Priya. What is Data Processing? EDUCBA, 7 jul. 
2023. Disponível em: <https://www.educba.com/what-is-data-processing/>. 
Acesso em: 08 set. 2023. 
BHAT, Adi. Data Collection Methods: Sources & Examples. QuestionPro, 
c2023. Disponível em: <https://www.questionpro.com/blog/data-collection-
methods/>. Acesso em 16 ago. 2023. 
BRANCO, Henrique. Orquestre um projeto de ciência de dados em Python 
com Prefect. GitHub, c2022. Disponível em: 
<https://henriqueajnb.github.io/data-science-escalavel/cap05-
construir_pipelines/sec5-1-prefect.html>. Acesso em: 29 ago. 2023. 
CARRASQUEIRA, Karina. Métodos de coletas de dados. AcademiKa, 27 mai. 
2019. Disponível em: 
<https://karinacarrasqueira.wordpress.com/2019/05/27/metodos-de-
coletas-de-dados/>. Acesso em: 06 ago. 2023 
DIGITAL NEST. Difference between Big Data and Data Analytics. 15 mar. 
2018. Disponível em: <https://www.digitalnest.in/blog/difference-big-data-
data-analytics/>. Acesso em: 24 ago. 2023. 
ECKERSON, Wayne; WHITE, Colin. Evaluating ETL and Data Integration 
Platforms. USA, 2003. 
https://blog.academiain1.com.br/o-que-e-e-qual-a-importancia-de-aprender-sobre-modelagem-de-dados/
https://blog.academiain1.com.br/o-que-e-e-qual-a-importancia-de-aprender-sobre-modelagem-de-dados/
https://airflow.apache.org/
https://www.educba.com/what-is-data-processing/
https://www.questionpro.com/blog/data-collection-methods/
https://www.questionpro.com/blog/data-collection-methods/
https://henriqueajnb.github.io/data-science-escalavel/cap05-construir_pipelines/sec5-1-prefect.html
https://henriqueajnb.github.io/data-science-escalavel/cap05-construir_pipelines/sec5-1-prefect.html
https://karinacarrasqueira.wordpress.com/2019/05/27/metodos-de-coletas-de-dados/
https://karinacarrasqueira.wordpress.com/2019/05/27/metodos-de-coletas-de-dados/
https://www.digitalnest.in/blog/difference-big-data-data-analytics/
https://www.digitalnest.in/blog/difference-big-data-data-analytics/
 
 
214 
 
 
ELIAS, Diego. Entendendo o processo ETL. Canaltech, 11 jun. 2014. 
Disponível em: <https://canaltech.com.br/business-
intelligence/entendendo-o-processo-de-etl-22850/>. Acesso em: 10 mai. 
2023. 
EMERITUS. Big Data Vs Data Analytics: Key Differences. 22 mai. 2023. 
Disponível em: <https://emeritus.org/in/learn/big-data-vs-data-analytics/>. 
Acesso em: 17 set. 2023. 
FERREIRA, Tamires; VINCENTIN, Tissiane. LGPD: qual a diferença entre 
dados pessoais, sensíveis e anonimizados? Olhar Digital, 17 ago. 2021. 
Disponível em: <https://olhardigital.com.br/2021/08/17/tira-duvidas/lgpd-
qual-a-diferenca-entre-dados-pessoais-sensiveis-e-anonimizados/>. 
Acesso em: 06 set. 2023. 
GAUR, Chandan. What is a Data Pipeline? Benefits and its Importance. 
Xenonstack, 26 dez. 2022. Disponível em: 
<https://www.xenonstack.com/insights/data-pipeline-benefits-
importance>. Acesso em: 17 set. 2023. 
GITHUB. Awesome Public Datasets. c2023. Disponível em: 
<https://github.com/awesomedata/awesome-public-datasets>. Acesso em: 
24 ago. 2023. 
GUIMARÃES, Leandro. Qual a diferença entre dados e informação? Entenda 
agora!. Know solutions, jan, 2016. Disponível em: 
<https://www.knowsolution.com.br/diferenca-dado-e-informacao/>. Acesso 
em: 24 ago. 2022. 
HAJDARBEGOVIC, Mensur. Data Lake Architecture: A Comprehensive Guid. 
Virtasant, 28 jan. 2020. Disponível em: 
<https://www.virtasant.com/blog/data-lake-architecture>. Acesso em: 17 
set. 2023. 
https://canaltech.com.br/business-intelligence/entendendo-o-processo-de-etl-22850/
https://canaltech.com.br/business-intelligence/entendendo-o-processo-de-etl-22850/
https://emeritus.org/in/learn/big-data-vs-data-analytics/
https://olhardigital.com.br/2021/08/17/tira-duvidas/lgpd-qual-a-diferenca-entre-dados-pessoais-sensiveis-e-anonimizados/
https://olhardigital.com.br/2021/08/17/tira-duvidas/lgpd-qual-a-diferenca-entre-dados-pessoais-sensiveis-e-anonimizados/
https://www.xenonstack.com/insights/data-pipeline-benefits-importance
https://www.xenonstack.com/insights/data-pipeline-benefits-importance
https://github.com/awesomedata/awesome-public-datasets
https://www.knowsolution.com.br/diferenca-dado-e-informacao/
https://www.virtasant.com/blog/data-lake-architecture
 
 
215 
 
 
HITACHI VANTARA. Community Home. Disponível em: 
<https://community.hitachivantara.com/s/pentaho>. Acesso em: 25 mai. 
2023. 
KAGGLE. Página Inicial. Disponível em: <https://www.kaggle.com/>. Acesso 
em: 24 ago. 2023. 
KIMBALL, Ralf. The Data Warehouse Toolkit: The Complete Guide to 
Dimensional Modeling. USA, 2002. 
LIZA, Urmita. Top 7 Best Data Collection Tools in 2023. QuestionPro, c2023. 
Disponível em: <Https://www.questionpro.com/blog/data-collection-tools/>. 
Acesso em: 16 ago. 2023 
LÓPEZ, Fernando. Kubeflow Pipelines: How to Build your First Kubeflow 
Pipeline from Scratch. Medium, 12 abr. 2021. Disponível em: 
<https://towardsdatascience.com/kubeflow-pipelines-how-to-build-your-
first-kubeflow-pipeline-from-scratch-2424227f7e5>. Acesso em: 29 ago. 
2023. 
MONGODB. Página Inicial.Disponível em: <https://docs.mongodb.com/>. 
Acesso em: 10 set. 2023 
MOTO DEI. Fundamentals of Data Architecture to Help Data Scientists 
Understand Architectural Diagrams Better. Medium, 11 set. 2020. Disponível 
em: <https://towardsdatascience.com/fundamentals-of-data-architecture-
to-help-data-scientists-understand-architectural-diagrams-better-
7bd26de41c66/>. Acesso em: 16 set. 2023. 
PRIMAK, Fábio Vinicius. Decisões com B.I.: Business Intelligence. Rio de 
Janeiro: Editora Ciência Moderna, 2008. 
https://community.hitachivantara.com/s/pentaho
https://www.kaggle.com/
https://www.questionpro.com/blog/data-collection-tools/
https://towardsdatascience.com/kubeflow-pipelines-how-to-build-your-first-kubeflow-pipeline-from-scratch-2424227f7e5
https://towardsdatascience.com/kubeflow-pipelines-how-to-build-your-first-kubeflow-pipeline-from-scratch-2424227f7e5
https://docs.mongodb.com/
 
 
216 
 
 
PRO WEB SCRAPING. Web Scraping Vs Web Crawling. c2023. Disponível em: 
<http://prowebscraping.com/web-scraping-vs-web-crawling/>. Acesso em: 
28 ago. 2023 
QWETY WIKI. Extrair, transformar, carregar – Extract, transform, load. 
Disponível em: <https://pt.qwe.wiki/wiki/Extract,_transform,_load>. Acesso 
em: 19 mai. 2023. 
REGO, Bergson Lopes. A LGPD está impulsionando a adoção de programas 
de governança de dados? Blog da BLR Data. Disponível em: 
<https://www.blrdata.com.br/single-post/lgpd-impulsiona-
governan%C3%A7a-de-dados>. Acesso em: 06 set. 2023. 
RENO, Giana. 10 Data Ingestion Tools to Fortify Your Data Strategy. 
FirstEigen, c2023. Disponível em: <https://firsteigen.com/blog/10-data-
ingestion-tools-to-fortify-your-data-strategy/>. Acesso em: 09 set. 2023. 
SARDA, Meenal. Batch Processing Vs Stream Processing. K21Academy, 22 
jul. 2022. Disponível em: <https://k21academy.com/microsoft-azure/data-
engineer/batch-processing-vs-stream-processing/>. Acesso em: 18 set. 
2023. 
SRJSUNNY. Introduction to Hadoop Distributed File System (HDFS). Geeks 
for Geeks, 17 jun. 2022. Disponível em: 
<https://www.geeksforgeeks.org/introduction-to-hadoop-distributed-file-
systemhdfs/>. Acesso em: 18 set. 2023. 
TIKAIT, Payal. BI vs. Big Data vs. Data Mining: A Comparison of the 
Difference Between Them. SelectHub, c2023. Disponível em: 
<https://www.selecthub.com/business-intelligence/bi-vs-big-data-vs-data-
mining/#4>. Acesso em: 17 set. 2023. 
UCI. Disponível em: <https://archive.ics.uci.edu/ml/index.php>. Acesso em: 
24 ago. 2023. 
http://prowebscraping.com/web-scraping-vs-web-crawling/
https://pt.qwe.wiki/wiki/Extract,_transform,_load
https://www.blrdata.com.br/single-post/lgpd-impulsiona-governan%C3%A7a-de-dados
https://www.blrdata.com.br/single-post/lgpd-impulsiona-governan%C3%A7a-de-dados
https://firsteigen.com/blog/10-data-ingestion-tools-to-fortify-your-data-strategy/
https://firsteigen.com/blog/10-data-ingestion-tools-to-fortify-your-data-strategy/
https://k21academy.com/microsoft-azure/data-engineer/batch-processing-vs-stream-processing/
https://k21academy.com/microsoft-azure/data-engineer/batch-processing-vs-stream-processing/
https://www.geeksforgeeks.org/introduction-to-hadoop-distributed-file-systemhdfs/
https://www.geeksforgeeks.org/introduction-to-hadoop-distributed-file-systemhdfs/
https://www.selecthub.com/business-intelligence/bi-vs-big-data-vs-data-mining/%234
https://www.selecthub.com/business-intelligence/bi-vs-big-data-vs-data-mining/%234
https://archive.ics.uci.edu/ml/index.php
 
 
217 
 
 
VIEIRA, Marcio Junior. Kimball University: As 10 Regras Essenciais para a 
Modelagem de Dados Dimensional. Ambiente Livre, mai. 2009. Disponível 
em: <https://www.ambientelivre.com.br/tutoriais-pentaho-bi/kimball-
university-as-10-regras-essenciais-para-a-modelagem-de-dados-
dimensional.html>. Acesso em: 19 mai. 2023. 
WIKIWAND. Extract, transform, load. Disponível em: 
<https://www.wikiwand.com/en/Extract,_transform,_load>. Acesso em: 12 
mai. 2023. 
 
https://www.ambientelivre.com.br/tutoriais-pentaho-bi/kimball-university-as-10-regras-essenciais-para-a-modelagem-de-dados-dimensional.html
https://www.ambientelivre.com.br/tutoriais-pentaho-bi/kimball-university-as-10-regras-essenciais-para-a-modelagem-de-dados-dimensional.html
https://www.ambientelivre.com.br/tutoriais-pentaho-bi/kimball-university-as-10-regras-essenciais-para-a-modelagem-de-dados-dimensional.html
https://www.wikiwand.com/en/Extract,_transform,_load

Mais conteúdos dessa disciplina