Introdução ao MapReduce Perguntas e Respostas da Entrevista
O MapReduce é um modelo simples de programação de dados paralelos projetado para escalabilidade e tolerância a falhas. Podemos dizer que o MapReduce é uma estrutura, que usa o conceito de nós para paralelizar os problemas que ocorrem em grandes conjuntos de dados; se eles são de rede local, usam o mesmo hardware e se o MapReduce é distribuído geograficamente, usa hardware diferente, respectivamente. O MapReduce é essencialmente composto pelas funções Map () e Reduce (). Foi popularizado pelo projeto Hadoop de código aberto.
Abaixo estão as 9 perguntas e respostas importantes da entrevista do MapReduce em 2019:
Se você procura um emprego relacionado ao MapReduce, precisa se preparar para as perguntas da entrevista do MapReduce de 2019. Embora todas as entrevistas do MapReduce sejam diferentes e o escopo de um trabalho também seja diferente, podemos ajudá-lo com as principais perguntas da entrevista do MapReduce com respostas, que ajudarão você a dar o salto e obter seu sucesso em sua entrevista.
Essas perguntas são divididas em duas partes:
Parte 1 - Perguntas da entrevista do MapReduce (Básica)
Esta primeira parte abrange perguntas e respostas básicas da entrevista com o MapReduce.
1. O que é o MapReduce?
Responda:
O MapReduce é um modelo simples de programação de dados paralelos projetado para escalabilidade e tolerância a falhas. Em outras palavras, é uma estrutura que processa problemas paralelizáveis em grandes conjuntos de dados usando o conceito de nós (o número de computadores) que, por sua vez, são classificados como clusters se for uma rede local e usa o mesmo hardware ou grades se forem distribuídos geograficamente e usam hardware diferente. O MapReduce é composto essencialmente por uma função Map () e uma função Reduce (). Foi pioneira no Google e processa muitos petabytes de dados todos os dias. Foi popularizado pelo projeto Hadoop de código aberto e é usado no Yahoo, Facebook e Amazon, entre outros.
2. Para que o MapReduce é usado por Empresa?
Responda:
Google
• Construção de índice para a Pesquisa do Google
O processo de construção de um índice posicional ou não posicional é chamado de construção ou indexação de índice. A função do MapReduce é Index Construction e foi projetada para grandes agrupamentos de computadores. O objetivo do cluster é resolver problemas computacionais para nós ou computadores criados com peças padrão em vez de um supercomputador.
• Cluster de artigos para o Google Notícias
Para agrupamento de artigos, as páginas são primeiro classificadas de acordo com a necessidade de agrupamento. As páginas incluem muitas informações que não são necessárias para o armazenamento em cluster. Em seguida, o artigo é trazido para sua forma vetorial com base em palavras-chave e na ponderação fornecida. Em seguida, eles são agrupados usando algoritmos.
• Tradução automática estatística
A tradução de corpora de texto bilíngüe por análise gera modelos estatísticos que traduzem um idioma para outro usando pesos e são reduzidos à tradução mais provável.
Yahoo
• "Mapa da Web" alimentando o Yahoo! Procurar
Semelhante ao artigo em cluster do Google Notícias, o MapReduce é usado para agrupar as saídas de pesquisa no Yahoo! Plataforma.
• Detecção de spam para o Yahoo! Enviar
Facebook
•Mineração de dados
A recente tendência de explosão de dados resultou na necessidade de métodos sofisticados para dividir os dados em partes que podem ser usadas facilmente na próxima etapa da análise.
• d Otimização
• Detecção de spam
Vamos para as próximas perguntas da entrevista do MapReduce.
3. Quais são os objetivos de design do MapReduce
Responda:
• Escalabilidade para grandes volumes de dados
Como o MapReduce é uma estrutura que visa trabalhar com dados paralelizáveis, usando o conceito de nós, que é o número de computadores como clusters ou grades, é escalável para n número de computadores. Portanto, um objetivo de design proeminente do MapReduce é que ele seja escalável para milhares de máquinas e 10.000 discos.
• Eficiência de custos
Como o MapReduce trabalha com dados paralelos nos nós ou no número de computadores, a seguir, os motivos que o tornam econômico:
Máquinas baratas de commodities, em vez de um supercomputador. Embora baratos, eles não são confiáveis.
- Rede de mercadorias
-Tolerância automática a falhas, ou seja, são necessários menos administradores.
-É fácil de usar, isto é, requer menos programadores.
4. Quais são os desafios do MapReduce?
Responda:
Essas são as perguntas comuns da entrevista do MapReduce feitas em uma entrevista. Os principais desafios do MapReduce são os seguintes:
-Nós baratos falham, especialmente se você tiver muitos
O tempo médio entre falhas para 1 nó é igual a 3 anos. O tempo médio entre falhas para 1000 nós é igual a 1 dia. A solução é criar tolerância a falhas no próprio sistema.
- Rede de mercadorias é igual ou implica em baixa largura de banda
A solução para uma baixa largura de banda é enviar a computação aos dados.
-Programar sistemas distribuídos é difícil
A solução para isso é que, de acordo com o modelo de programação paralela a dados, os usuários escrevem as funções "map" e "reduzir". O sistema distribui o trabalho e lida com as falhas.
5. Qual é o modelo de programação do MapReduce?
Responda:
O modelo de programação MapReduce é baseado em um conceito chamado registros de valores-chave. Ele também fornece paradigmas para o processamento de dados paralelo. Para processar os dados no MapReduce, os dados de Entrada e Saída precisam ser mapeados no formato de vários pares de valores-chave. O par de chave-valor único também é chamado de registro. O modelo de programação MapReduce consiste em uma função Map () e uma função Reduce. O modelo para estes é o seguinte.
Função Map (): (K in, V in) list (K inter, V inter)
Função Reduzir (): (K inter, lista (V inter)) list (K out, V out)
Parte 2 - Perguntas da entrevista do MapReduce (avançado)
Vamos agora dar uma olhada nas perguntas avançadas da entrevista do MapReduce.
6. Quais são os detalhes da execução do MapReduce?
Responda:
No caso da execução do MapReduce, um único mestre controla a execução do trabalho em vários escravos. É preferível que os mapeadores sejam colocados no mesmo nó ou no mesmo rack que seu bloco de entrada, para minimizar o uso da rede. Além disso, os mapeadores salvam as saídas no disco local antes de servi-las nos redutores. Isso permite a recuperação se um redutor falha e permite mais redutores que nós.
7. O que é um combinador?
Responda:
O combinador, também conhecido como semi-redutor, opera aceitando entradas da classe Map e passando os pares de valores-chave de saída para a classe Reducer. A principal função de um combinador é resumir os registros de saída do mapa com a mesma chave. Em outras palavras, um combinador é uma função de agregação local para chaves repetidas produzidas pelo mesmo mapa. Funciona para funções associativas como SUM, COUNT e MAX. Diminui o tamanho dos dados intermediários, pois é um resumo da agregação de valores para todas as chaves repetitivas.
Vamos para as próximas perguntas da entrevista do MapReduce.
8.Por que porco? Por que não o MapReduce?
Responda:
• O MapReduce permite que o programador execute uma função de mapa seguida por uma função de redução, mas trabalhar em como ajustar o processamento de dados nesse padrão, que geralmente requer vários estágios do MapReduce, pode ser um desafio.
• Com o Pig, as estruturas de dados são muito mais ricas, pois possuem vários valores e aninhados, e o conjunto de transformações que você pode aplicar aos dados é muito mais poderoso. Por exemplo, eles incluem junções que não são possíveis no MapReduce.
• Além disso, o Pig é um programa que transforma a transformação em uma série de trabalhos do MapReduce.
9.MapReduzir Críticas
Responda:
Uma crítica proeminente do MapReduce é que o ciclo de desenvolvimento é muito longo. Escrever os mapeadores e redutores, compilar e empacotar o código, enviar o trabalho e recuperar os resultados é demorado. Mesmo com o streaming, que remove a etapa de compilação e pacote, a experiência ainda está demorando muito.
Artigo recomendado
Este foi um guia para a Lista de perguntas e respostas da entrevista do MapReduce, para que o candidato possa reprimir essas perguntas da entrevista do MapReduce facilmente. Você também pode consultar os seguintes artigos para saber mais -
- Perguntas importantes sobre entrevistas na análise de dados
- 10 melhores perguntas da entrevista de padrão de design
- Perguntas da entrevista do Elasticsearch
- Perguntas mais úteis sobre entrevistas com Ruby
- Como o MapReduce funciona