Buscar

Ciências_de_Dados_teorico(02)

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

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

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

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

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

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

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Ciência de Dados
Material Teórico
Responsável pelo Conteúdo:
Prof.ª Lucia Contente Mós
Revisão Textual:
Prof.ª Dr.ª Selma Aparecida Cesarin
Produção e Armazenamento de Dados
• Estamos Produzindo de Dados;
• Pré-Processamento dos Dados;
• Armazenamento de Dados.
• Entender como os grandes volumes de dados são produzidos, como os dados transfor-
mam-se em informações e, por consequência, como se chega ao conhecimento;
• Conhecer as etapas de descobrimento do conhecimento;
• Conhecer e determinar diretrizes, objetivos e requisitos dos processos ETL;
• Conhecer e Identifi car a infraestrutura para o armazenamento de dados.
OBJETIVOS DE APRENDIZADO
Produção e Armazenamento de Dados
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas:
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos 
e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão sua 
interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e de 
aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contato com seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
UNIDADE Produção e Armazenamento de Dados
Estamos Produzindo de Dados
Vivemos na Era da Informação e isso significa que a Humanidade gera milhões e 
milhões de dados todos os dias e esse volume permanece em constante crescimento. 
Para termos uma ideia desse crescimento, a quantidade de usuários da Internet, 
no mundo todo, nos últimos 20 anos, passou de 16 milhões de pessoas para apro-
ximadamente 2,8 bilhões. 
A quantidade de buscas diárias no Google ultrapassa 5 bilhões, são escritas 500 
milhões de mensagens no twitter por dia e vistas 200 milhões de horas de vídeos 
no YouTube por dia, conforme se vê na Figura 1.
Figura 1 – Crescimento dos Usuários da Internet
Fonte: CASTRO, 2016
Desafio do crescimento
Observando-se a Figura e analisando os dados, chega-se à conclusão de que 
vivemos em tempos de crescimento de volume de dados exponenciais. Encontrar e 
acessar fontes de informação, pessoas, produtos e serviços não é mais problema; 
na verdade, o desafio atual é gerenciar, armazenar, processar e extrair conhecimen-
to a partir dessa quantidade quase que ilimitada de dados.
Se perguntássemos: onde os dados são armazenados? uma primeira resposta 
seria: na nuvem, onde os recursos de hardware e software são compartilhados por 
meio de uma rede, via de regra, a Internet, e os usuários podem acessar as aplica-
ções hospedadas em servidores remotos utilizando browsers, desktops, aplicativos 
móveis, etc. 
Os dados também podem ser armazenados “no chão”, ou seja, em servidores 
locais dentro das Empresas, mas é importante saber que essa solução é muito cara 
e dispendiosa. 
As, empresas, vem ampliando de forma significativa, seus Bancos de Dados, in-
vestindo em armazenamento, disponibilidade, qualidade e monitoramento dos dados. 
8
9
E é diante desse cenário, de verdadeira inundação de dados, que surge a neces-
sidade de se fazer a mineração de dados, como um processo sistemático, interativo 
e iterativo, de preparação e extração de conhecimentos a partir de grandes Bases 
de Dados.
Dados x Informação x Conhecimento
Dado
É o menor elemento a ser armazenado. É algo que sozinho não tem sentido.
Observe:
Tabela 1 – Exemplo de Dados
21/08/1976 É somente uma data, não traz nenhum significado e nem entendimento.
30 graus Temperatura do que?
Poucas Poucas o que?
Perceba que somente o dado, quando analisado sozinho, não traz nenhum significado.
Informação
É o que obtemos do resultado da operação com o dado.
Observe:
Tabela 2 – Exemplo de Informação
Data de Nascimento: 21/08/1976 – Data Atual Idade
Temperatura do ar: 30 graus Se a temperatura do ar for maior que 22 graus, então, o dia está quente.
Quantidade de nuvens: poucas Se há poucas nuvens no céu, significa que a probabilidade de chover é baixa.
Note que todas as informações obtidas são resultados de operações com os da-
dos armazenados.
Conhecimento
Ocorre quando utilizamos a informação para chegar a alguma conclusão ou, até 
mesmo, reconhecer algum tipo de comportamento/padrão.
Por exemplo: como o dia está quente e a probabilidade de chover é baixa, irei 
à praia.
Diante desse conhecimento, é possível tomar uma série de ações, por exemplo, 
uma Empresa de roupas de praia pode reforçar seu estoque ou enviar comunica-
ções de promoções ou, ainda, criar ações de marketing etc.
É importante ressaltar que só se conseguiu chegar ao conhecimento porque 
os dados foram armazenados. Seguir essa sequência dados → informação → co-
nhecimento é fundamental para que a Ciência de Dados tenha sucesso, ou seja, 
assertividade nas decisões.
9
UNIDADE Produção e Armazenamento de Dados
Banco de Dados
Seleção
Transformação
Mineração
Análise do
Resultado
Pré-processamento
Limpeza
Mineração: Etapa Central do Processo
de Descoberta de Conhecimento
Conhecimento
Figura 2 – Etapas da Descoberta do Conhecimento
Pré-Processamento dos Dados
A produção dos dados começa com o processo de ETL (Extração, Transforma-
ção e Carga).
Processo de Extração 
Trata-se de extrair as informações de sistemas legados. Muitas podem ser as fon-
tes de dados como, por exemplo: Banco de Dados relacionais, Sistemas Erp, Redes 
Sociais, vídeos, áudios, planilhas, documentos etc. 
Essa extração leva os dados para uma área de trabalho chamada de área de staging, 
que é dedicada para que se possa trabalhar e aplicar técnicas aos dados coletados.
Aplicativos
Operacionais
Data Mark
Dados Externos
Equipamentos
de Automação
Software de
Automação de
Escritórios
E
T
L
FONTES DE
DADOS
EXTRAÇÃO,
TRANSFORMAÇÃO E
CARREGAMENTO
DATA
WAREHOUSE
EXPLORAÇÃO
Data Mining
Figura 3 – Processo ETL
10
11
Acesso aos Dados – Fonte Banco de Dados
Esse tipo de acesso ocorre para dados estruturados. São os dados que contém 
uma organização para serem recuperados. Armazenados em tabelas com linhas e 
colunas que identificam diversos pontos sobre aquela informação e tornam o traba-
lho da Tecnologia mais fácil e simples.
Os dados nos sistemas fontes podem ser disponibilizados como: Banco de Dados 
ou arquivos (geralmente, do tipo texto). No caso de Banco de Dados, são criadas 
views e tabelas. Existem ferramentas que automatizam esse processo, chamadas 
ferramentas ETL.
As vantagens de ser fazer a extração quando a fonte é o Banco de Dados são:
• Flexibilidade e facilidade para extrair os dados;
• Uso da linguagem SQL;
• Possibilidade de usar vários tipos de filtros;
• A formatação dos dados já ocorre na própria consulta.
As desvantagens na utilizaçãono Banco de Dados é que quando comparado à extra-
ção de um arquivo .txt, a performance é menor além de ser necessária a utilização de vá-
rios tipos de conexões, caso haja vários tipos de Bancos de Dados como fonte de dados.
Acesso aos Dados – Outras Fontes
Esse tipo de acesso ocorre para dados não-estruturados que são documentos 
de texto, áudios, vídeos, textos das Redes Sociais, “curtidas”, quantidade de “likes”, 
mensagens do twitter, por exemplo, que não pertencem a uma estrutura de dados. 
Extração Transformação e Carga Data
Warehouse
Staging
Area
Figura 4 – Vários tipos de Fontes de Dados
Os arquivos podem ser do tipo texto, .xml, .csv ou, ainda, delimitados por algum 
tipo de caracter como por exemplo “-“. 
Os arquivos são uma boa forma de extrair e manipular dados, as ferramentas de 
ETL aceitam e trabalham muito bem com arquivos. 
Eles têm performance superior aos Bancos de Dados. No entanto, é necessário 
prestar muita atenção ao formato dos dados e das máscaras, além das variações 
que podemos encontrar para o mesmo tipo de registro.
11
UNIDADE Produção e Armazenamento de Dados
Exemplo do uso de Ferramentas ETL, para extração de dados
Neste exemplo, iremos usar a ferramenta ETL Power BI.
Tabela 3 – Amostra de Fonte de Dados – Planilha – Arquivo no formato .xls
Segment Country Product Discount Units Sold Manufactoring Price Sale Price Gross Sales
Government Canada Carretera None 1618,5 $ 3,00 $ 20,00 $ 32.370,00
Government Germany Carretera None 1321 $ 3,00 $ 20,00 $ 26.420,00
Midmarket France Carretera None 2178 $ 3,00 $ 20,00 $ 32.670,00
Midmarket Germany Carretera None 888 $ 3,00 $ 20,00 $ 13.320,00
Midmarket Mexico Carretera None 2470 $ 3,00 $ 20,00 $ 37.050,00
Discounts Sales COGS Profit Date Month Number Month Name Year
$ - $ 32.370,00 $ 16.185,00 $ 16.185,00 01/01/2014 1 January 2014
$ - $ 26.420,00 $ 13.210,00 $ 13.210,00 01/01/2014 1 January 2014
$ - $ 32.670,00 $ 21.780,00 $ 10.890,00 01/06/2014 6 June 2014
$ - $ 13.320,00 $ 8.880,00 $ 4.440,00 01/06/2014 6 June 2014
$ - $ 37.050,00 $ 24.700,00 $ 12.350,00 01/06/2014 6 June 2014
1. Abra o Power Bi;
2. Clique em obter Dados;
3. Selecione Arquivos.
Figura 6Figura 5
12
13
4. Navegue até o arquivo no seu computador e escolha Abrir.
Figura 7
5. Clique em carregar.
Figura 8
13
UNIDADE Produção e Armazenamento de Dados
Staging Area
Esta área serve como local intermediário entre as fontes de dados e o armazena-
mento. Nesse local, serão realizadas todas as limpezas e transformações de dados 
necessárias. Também é aqui que os dados ficaram armazenados para ser mantido 
um histórico, para possíveis reprocessamentos, conferências e auditorias.
Além disso, a staging area é utilizada em processos de recuperação, backup, 
auditoria e rastreabilidade:
• Processo de recuperação: caso haja um erro nas últimas 100 linhas de uma 
carga de 10 milhões que foi realizada no DW, não é necessário desfazer toda 
a carga, pois as 100 linhas corretas estão na Staging Area;
• Processo de Backup: com a Staging Area, é gerado um backup de todas as 
fontes de dados;
• Processo de Auditoria: por ter um armazenamento histórico dos dados, é pos-
sível verificar qual foi a carga de dados realizada no último mês, por exemplo;
• Processo de Rastreabilidade: como a Staging Area vai receber todos os da-
dos, é possível investigar que tipo de processo ETL está apresentando algum 
tipo de problema.
Como é possível notar, a Staging Area exerce função fundamental no processo 
de ETL, daí é de suma importância criar essa área; geralmente, é um Banco de 
Dados, ou um tablespace.
Processos de Transformação/Limpeza
As principais atividades de transformação são: limpeza dos dados, garantir a quali-
dade dos dados (Data Quality), descarte dos dados inválidos e padronização dos dados.
• Processo de limpeza dos dados: garantir as propriedades das colunas, ga-
rantir as estruturas de dados, garantir dados preenchidos e regras dos dados, 
garantir regras de negócio e armazenar o dado limpo. Alguns exemplos de 
problemas com os dados fontes que precisam de limpeza:
 » Colunas em que faltam valores;
 » Zeros substituem os valores que faltam;
 » Faltam dados que você sabe que deveriam estar ali;
 » Linhas ou valores estão duplicados;
 » Formatos de datas estão inconsistentes;
 » Unidades não estão especificadas;
 » Nomes de campos estão ambíguos;
 » Números foram guardados como texto.
• Processo de qualidade dos dados: dados corretos com nomes e descrições, 
os dados não podem ser ambíguos, todos os dados devem ser únicos, os dados 
14
15
devem ser consistentes de acordo com as regras definidas e, por fim, os dados 
devem ser completos como, por exemplo, endereço. Exemplos de dados com 
qualidade:  inexistência de dados duplicados, conhecimento do número exato de 
clientes, obtenção de uma visão única de cliente ou a segmentação de clientes;
• Processo de padronização dos dados: padronizar os dados da coluna das 
dimensões, padronizar e garantir regras de indicadores, garantir as regras de 
negócio para as colunas, padronizar métricas e tipos de dados. Um exemplo 
de dado padronizado, no item regra de negócio, seria: suponha que na Empre-
sa nenhum funcionário pode ganhar menos de 1 salário mínimo. Se os dados 
de salário estiverem padronizados, não se deve encontrar nenhum salário nulo 
ou inferior ao salário mínimo estabelecido. É importante ressaltar que embora 
a regra de negócio se refira ao salário, não é possível fazer a padronização na 
coluna salário sem verificar e padronizar a coluna data de pagamento.
Exemplo do uso Ferramenta ETL para Transformação de Dados
Clique em Editar Consultas para visualizar os dados carregados.
Figura 9
Nesta seção, é possível, fazer todas as alterações nos dados, como, por exemplo:
• Formatar os dados: clique em formato, clique em maiúsculas:
Figura 10
15
UNIDADE Produção e Armazenamento de Dados
Figura 11
Figura 12
• Alterar os nomes das colunas: clique em mudar o nome; por exemplo, de 
units sold para unidades vendidas:
Figura 13
16
17
Figura 14
• Fazer as transformações dos dados;
Por exemplo, vamos trocar na coluna discount band o valor None por Nenhum:
Figura 15
Figura 16
17
UNIDADE Produção e Armazenamento de Dados
• Fazer agrupamentos de dados: selecione a coluna e clique em agrupar por:
Figura 17
• Fazer operações aritméticas: clique em padrão; clique em porcentagem:
Figura 18
Figura 19
18
19
Figura 20
• Gerar análises estatísticas, entre outras: clique em estatísticas; clique em soma:
Figura 21
Figura 22
19
UNIDADE Produção e Armazenamento de Dados
Figura 23
Staging Area II
Embora não seja obrigatória, recomenda-se, fortemente, que esta área seja cria-
da, pois é o local em que todos os dados já estão limpos, tratados e padronizados. 
Nesse momento, todos os dados estão prontos para fazer o armazenamento.
Armazenamento de Dados
Processo de Load/Carga – Forma de 
Armazenamento de dados estruturados
A carga dos dados consiste em fisicamente estruturar e carregar os dados para 
dentro da camada de apresentação seguindo o modelo dimensional. 
Dependendo das necessidades da Organização, esse processo varia amplamente. 
Alguns data warehouses podem substituir as informações existentes semanalmente, 
com dados cumulativos e atualizados, ao passo que outro DW (ou até mesmo outras 
partes do mesmo DW) podem adicionar dados a cada hora. 
A latência e o alcance de reposição ou acréscimo constituem opções de projetos 
estratégicos que dependem do tempo disponível e das necessidades de negócios. 
A etapa de carga ocorre em sequência com a de transformação. Assim que são 
efetuados os tratamentos necessários nos dados, a carga no DW é iniciada. Essa 
fase se resume na persistência dos dados na base consolidada.
Nesse momento, ocorre a carga das tabelas dimensões, das tabelas fato e suas 
variações, sendo que a carga deve ocorrer nessa ordem, ou seja, primeiro se faz a 
carga de todos osdados das dimensões e depois os dados das fato.
20
21
Constitui-se do armazenamento físico dos dados oriundos dos Sistemas Opera-
cionais da Empresa e externos, permitindo um acesso mais rápido e seguro aos 
dados do Data warehouse, além de prover maior flexibilidade de tratamento e 
facilidade de manipulação.
Com a realização da carga, é proporcionada a interação com os usuários finais 
por meio de ferramentas visuais tradicionais, tais como sistemas de planilhas de 
cálculo e browsers, entre outras.
Também devem ser criados e mantidos os metadados que descrevem os dados e 
a organização do Sistema, podem ser, ainda, fórmulas utilizadas para cálculo, des-
crições das tabelas disponíveis aos usuários, descrições dos campos das tabelas, per-
missões de acesso e informações sobre os administradores do sistema, entre outras.
Infraestrutura para armazenamento de dados
A computação em nuvem é a grande ferramenta para armazenamento de dados, 
pois as nuvens públicas têm alto poder de suportar volumes de dados enormes e as 
características de elasticidade que as nuvens permitem, quando necessário, é possí-
vel acionar servidores extras para atender à demanda de crescimento do momento.
Na realidade, outra solução de armazenamento de dados fora da nuvem, nos 
dias de hoje, é praticamente inviável, devido ao alto custo de criação e manutenção.
O modelo de computação em nuvem é uma solução que se adéqua às necessida-
des de armazenamento de dados, pois acompanha a imprevisibilidade do montante 
de dados que poderá ser tratado. 
A nuvem ajusta-se automaticamente à capacidade de armazenamento e pro-
cessamento que varia imensamente de acordo com o negócio, tempo, condições 
estabelecidas etc. 
Os grandes provedores de nuvens como Amazon, Azure e Google possuem 
serviços como:
• Data-warehouse-as-a-service;
• BigData-as-a-service.
Com o oferecimento desse tipo de serviço, o custo do armazenamento de dados 
torna-se mais barato, proporcionando que qualquer porte de Empresa possa mon-
tar um DW e um Big Data. 
Um exemplo disso é o da Etsy, site de e-commerce especializado em produtos de 
artesanato e artigos de época, que já tem mais de onze milhões de usuários, resul-
tando em 25 milhões de visitantes únicos e 1,1 bilhões de visualizações de páginas. 
Hoje, o Etsy captura mais de 5GB de dados por dia. Este imenso volume de 
dados é analisado em uma nuvem pública para entender melhor o comportamento 
dos seus clientes e realizar análises preditivas. 
21
UNIDADE Produção e Armazenamento de Dados
Assim, o Etsy consegue determinar quais os produtos que melhor se adequam 
ao gosto de um determinado cliente. E não precisa instalar grandes servidores para 
fazer essa análise. A Etsy utiliza a nuvem e paga apenas pelo tempo necessário 
para realizar a tarefa.
Outro motivo para o uso da nuvem, no armazenamento de dados é a velocidade de 
processamento. Existem situações em que o processamento de dados e o resultado da 
análise deve ser praticamente em tempo real. Por exemplo, a análise das condições 
de trânsito, com o objetivo de impedir ou pelo menos minimizar a ocorrência 
de congestionamentos. 
Se a infraestrutura não estiver disponível ou, ainda, não fizer o processamento 
de dados rápido o suficiente, o impacto da falta de informações e, por consequ-
ência, a geração do conhecimento, refletirão em engarrafamentos enormes que 
afetam – e muito – a qualidade de vida de várias pessoas.
Armazenamento de dados não estruturados
Como verificamos no item anterior, a nuvem é o melhor e talvez o único recurso que 
temos atualmente para o armazenamento de dados estruturados ou não estruturados. 
Mas agora, surge a seguinte questão: como esses dados ficam armazenados na 
nuvem? E como achar o dado que estamos procurando de forma rápida? 
Para responder a essas questões, são utilizadas estruturas como o Haddop 
e MapReduce.
Haddop
A tecnologia Haddop é uma combinação de dois projetos separados, que são 
o Haddop e o MapReduce, que se trata de um processamento paralelo Haddop 
Distributed File System (HDFS) e do MapReduce, que é um algoritmo que a 
Google criou para acelerar as pesquisas endereçadas em seu buscador, ou seja, 
o Haddop armazena os dados e o MapReduce encontra esses dados de forma 
muito rápida.
Os dados no HDFS (Haddop) são divididos em pequenos pedaços, chamados 
Blocos, geralmente com tamanho de 64MB cada Bloco, e distribuídos por vários 
servidores clusterizados. 
Desse jeito, o processamento dos dados é muito mais veloz, pois, ao invés de 
fazer uma busca sequencial, faz-se uma busca em paralelo, acessando vários blocos 
espalhados pelos servidores, ao mesmo tempo.
Paralelizar um algoritmo é executar partes diferentes dele em unidades de pro-
cessamento diferentes e obter um menor tempo de execução.
22
23
D
A
D
O
S
in1
in2
in3
in4
in5
in6
in7
out1
out2
out3
out4
out5
out6
out7
D
A
D
O
S
P
R
O
C
E
S
S
A
D
O
S
Figura 24 – Conceito de Paralelização
MapReduce
O modelo MapReduce possui a abstração que permite que o usuário seja isolado 
da camada de paralelização. 
A paralelização depende da implementação do modelo MapReduce. É na im-
plementação que devem estar garantidas as propriedades do Sistema (integridade, 
disponibilidade, controle de acesso, não-repúdio, confidencialidade, autenticação 
e privacidade).
A base de aplicação do MapReduce consiste em dividir e processar conjuntos de 
dados com o uso das funções Map e Reduce.
O Algoritmo MapReduce tem duas funções: Map e Reduce:
• Função Map: a função map (chave, valor) recebe como parâmetro de entra-
da um par (chave, valor) e emite na saída um par (chave intermediária, valor 
intermediário);
• Função Reduce: a função Reduce (chaveInt, valoresint) recebe o conjunto de 
valores intermediários valoresInt (saídas da função map) que estão associados 
à mesma chave intermediária chaveInt e emite como saída os valores finais na 
saída para a mesma chave.
O processamento realizado por essas funções é dividido em três etapas:
1. Etapa inicial: consiste em realizar as tarefas de mapeamento;
2. Etapa intermediária: os dados são recolhidos das tarefas de mapeamen-
to, agrupados e disponibilizados para as tarefas de redução;
3. Etapa de redução: na qual são executadas várias tarefas de redução, como 
agrupamento de valores comuns e geração à saída da aplicação.
23
UNIDADE Produção e Armazenamento de Dados
Map 1
Map M
Reduce 1
Reduce R
Input data
Piece 1
k1 v1
k2 v2
k2 v3
Piece M
Partition 1
Partition R
Partition 1
Partition R
Intermediate data Output data
Figura 25 – Aplicação do MapReduce
Exemplo de Aplicação do MapReduce
• Problema: contar o número de vezes em que uma palavra aparece em uma 
grande coleção de documentos:
Figura 26 – Pseudocódigo da função Map
Fonte: CASTRO, 2016
Figura 27 – Pseudocódigo da função Reduce
Fonte: CASTRO, 2016
Como podemos ver no pseudocódigo das Figuras 26 e 27, cada chamada da 
função Map recebe como entrada o conteúdo de um dos documentos da coleção.
Para cada palavra do documento de entrada, a função Map emite o valor “1” 
associado à chave que representa a palavra em questão.
Cada chamada da função Reduce recebe como entrada uma palavra e um ite-
rador para todos os valores emitidos pela função Map, associados com a palavra 
em questão.
Todos os valores são, então, somados em uma linha contendo a palavra e seu 
total de ocorrências.
24
25
Material Complementar
Indicações para saber mais sobre os assuntos abordados nesta Unidade:
 Livros
Banco de dados: projeto e implementação
MACHADO, F. N. R. Banco de dados: projeto e implementação. São Paulo: Érica, 
2004. 398p.;
Projeto de banco de dados: uma visão prática
MACHADO, F. N. R.; ABREU, M. P. de. Projeto de banco de dados: uma visão 
prática. 15.ed. São Paulo: Érica, 2007. 300p.;
OCA ORACLE DATABASE 11G – ADMINISTRAÇAO I
WATSON, J. OCA ORACLE DATABASE 11G – ADMINISTRAÇAO I. São Paulo: 
Bookman Companhia, 2009;
OCP ORACLE DATABASE 11G – ADMINISTRAÇAO II
BRYLA, B. OCP ORACLE DATABASE11G – ADMINISTRAÇAO II. São Paulo: 
Bookman Companhia, 2009;
OCP ORACLE DATABASE 11G – ADMINISTRAÇAO II
RAMKLASS, R.; WATSON, J. OCA ORACLE DATABASE 11G - FUNDAMENTOS 
I AO SQL. São Paulo: Alta Books, 2009;
Projetando e Administrando Banco de Dados SQL Server 2000 .net: Como Servidor Enterprise
PATTON, R.; OGLE, J. Projetando e Administrando Banco de Dados SQL Server 
2000 .net: Como Servidor Enterprise. Tradução de Andréa Barbosa Bento; Cláudia 
Reali; Lineu Carneiro de Castro. Rio de Janeiro: Alta Books, 2002. 792p.
25
UNIDADE Produção e Armazenamento de Dados
Referências
BECKER, J. L. Estatística básica:  transformando dados em informação. Porto 
Alegre: Bookman, 2015.
CASTRO, L. N. de. Introdução à mineração de dados: conceitos básicos, algo-
ritmos e aplicações. São Paulo: Saraiva, 2016.
DATE, C. J. Introdução a sistemas de bancos de dados. Tradução de Daniel 
Vieira. Revisão técnica Sérgio Lifschitz. Rio de Janeiro: Elsevier, 2003. 865p.
ELMASRI, R.; NAVATHE, S. B. Sistemas de Banco de Dados. Tradução de Ma-
rília Guimarães Pinheiro et al. Revisão técnica Luis Ricardo de Figueiredo. 4.ed. 
São Paulo: Pearson Addison Wesley, 2005. 724p.
______. Sistemas de Banco de Dados. 6.ed. São Paulo: Pearson, 2011.
GILLENSON, M; L. Fundamentos de sistemas de gerência de Banco de Dados. 
Tradução de Acauan Fernandes; Elvira Maria Antunes Uchoa. Rio de Janeiro: LTC, 
2006. 304p.
KWECKO, V. et al. Ciência de dados aplicada na análise de processos cogniti-
vos em grupos sociais: um estudo de caso. In: BRAZILIAN SYMPOSIUM ON 
COMPUTERS IN EDUCATION (SIMPÓSIO BRASILEIRO DE INFORMÁTICA 
NA EDUCAÇÃO-SBIE). Rio Grande do Sul, 2018. Anais [...] Rio Grande do Sul 
2018, p. 1543.
SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistema de Banco de 
Dados. Tradução de Daniel Vieira. Revisão técnica Luis Ricardo de Figueiredo; 
Caetano Traina Jr. 3. ed. São Paulo: Pearson Makron Books, 2007. 778p.
26

Outros materiais