Top 60 Hadoop & Preguntas de la entrevista de MapReduce y amp; Respuestas

Tabla de contenido

Descargar PDF

Las siguientes son preguntas frecuentes en entrevistas para principiantes y desarrolladores con experiencia.

1) ¿Qué es Hadoop Map Reduce?

Para procesar grandes conjuntos de datos en paralelo en un clúster de Hadoop, se utiliza el marco Hadoop MapReduce. El análisis de datos utiliza un mapa de dos pasos y reduce el proceso.

2) ¿Cómo funciona Hadoop MapReduce?

En MapReduce, durante la fase de mapa, cuenta las palabras en cada documento, mientras que en la fase de reducción agrega los datos según el documento que abarca toda la colección. Durante la fase de mapa, los datos de entrada se dividen en divisiones para su análisis mediante tareas de mapa que se ejecutan en paralelo en el marco de Hadoop.

3) Explique qué es barajar en MapReduce.

El proceso mediante el cual el sistema realiza la ordenación y transfiere las salidas del mapa al reductor como entradas se conoce como reproducción aleatoria.

4) Explique qué es la caché distribuida en MapReduce Framework.

La caché distribuida es una característica importante proporcionada por el marco MapReduce. Cuando desee compartir algunos archivos en todos los nodos de Hadoop Cluster, se utiliza la caché distribuida. Los archivos pueden ser archivos jar ejecutables o archivos de propiedades simples.

5) Explique qué es NameNode en Hadoop.

NameNode en Hadoop es el nodo, donde Hadoop almacena toda la información de ubicación de archivos en HDFS (Hadoop Distributed File System). En otras palabras, NameNode es la pieza central de un sistema de archivos HDFS. Mantiene el registro de todos los archivos en el sistema de archivos y rastrea los datos del archivo en el clúster o en varias máquinas.

6) Explique qué es JobTracker en Hadoop. ¿Cuáles son las acciones seguidas por Hadoop?

En Hadoop para enviar y rastrear trabajos de MapReduce, se usa JobTracker. El rastreador de trabajos se ejecuta en su propio proceso de JVM

Job Tracker realiza las siguientes acciones en Hadoop

  • La aplicación del cliente envía trabajos al rastreador de trabajos
  • JobTracker se comunica con el modo Nombre para determinar la ubicación de los datos
  • Cerca de los datos o con ranuras disponibles, JobTracker ubica los nodos de TaskTracker
  • En los nodos de TaskTracker elegidos, envía el trabajo
  • Cuando una tarea falla, Job tracker notifica y decide qué hacer en ese momento.
  • Los nodos de TaskTracker son monitoreados por JobTracker

7) Explique qué son los latidos del corazón en HDFS.

Heartbeat se refiere a una señal utilizada entre un nodo de datos y un nodo de nombre, y entre el rastreador de tareas y el rastreador de trabajos, si el nodo de nombre o el rastreador de trabajos no responde a la señal, entonces se considera que hay algunos problemas con el nodo de datos o la tarea. rastreador

8) Explique qué son los combinadores y cuándo debe utilizarlos en un trabajo MapReduce.

Para aumentar la eficiencia del programa MapReduce, se utilizan combinadores. La cantidad de datos se puede reducir con la ayuda de combinadores que deben transferirse a los reductores. Si la operación realizada es conmutativa y asociativa puedes usar tu código reductor como combinador. La ejecución del combinador no está garantizada en Hadoop

9) ¿Qué sucede cuando falla un nodo de datos?

Cuando falla un nodo de datos

  • Jobtracker y namenode detectan la falla
  • En el nodo fallido, todas las tareas se reprograman
  • Namenode replica los datos del usuario en otro nodo

10) Explique qué es la ejecución especulativa.

En Hadoop durante la ejecución especulativa, se lanza una cierta cantidad de tareas duplicadas. En un nodo esclavo diferente, se pueden ejecutar varias copias del mismo mapa o reducir la tarea mediante la ejecución especulativa. En palabras simples, si una unidad en particular tarda mucho en completar una tarea, Hadoop creará una tarea duplicada en otro disco. Un disco que termina la tarea primero se retiene y los discos que no terminan primero se eliminan.

11) Explica cuáles son los parámetros básicos de un mapeador.

Los parámetros básicos de un asignador son

  • LongWritable y Text
  • Texto e IntWritable

12) Explique cuál es la función del particionador MapReduce.

La función del particionador MapReduce es asegurarse de que todo el valor de una sola clave vaya al mismo reductor, lo que eventualmente ayuda a distribuir uniformemente la salida del mapa sobre los reductores

13) Explique cuál es la diferencia entre una división de entrada y un bloque HDFS.

La división lógica de datos se conoce como Split, mientras que una división física de datos se conoce como HDFS Block

14) ¿Explica qué sucede en formato de texto?

En el formato de entrada de texto, cada línea del archivo de texto es un registro. Value es el contenido de la línea, mientras que Key es el desplazamiento de bytes de la línea. Por ejemplo, Key: longWritable, Value: text

15) Mencione cuáles son los principales parámetros de configuración que el usuario debe especificar para ejecutar MapReduce Job.

El usuario del marco MapReduce debe especificar

  • Ubicaciones de entrada del trabajo en el sistema de archivos distribuido
  • Ubicación de salida del trabajo en el sistema de archivos distribuido
  • Formato de entrada
  • Formato de salida
  • Clase que contiene la función de mapa
  • Clase que contiene la función reducir
  • Archivo JAR que contiene las clases de mapeador, reductor y controlador

16) Explique qué es WebDAV en Hadoop.

Para admitir la edición y actualización de archivos, WebDAV es un conjunto de extensiones para HTTP. En la mayoría de los sistemas operativos, los recursos compartidos de WebDAV se pueden montar como sistemas de archivos, por lo que es posible acceder a HDFS como un sistema de archivos estándar al exponer HDFS sobre WebDAV.

17) Explica qué es Sqoop en Hadoop.

Para transferir los datos entre la gestión de bases de datos relacionales (RDBMS) y Hadoop HDFS se utiliza una herramienta conocida como Sqoop. Usando Sqoop, los datos se pueden transferir desde RDMS como MySQL u Oracle a HDFS, así como exportar datos desde un archivo HDFS a RDBMS

18) Explique cómo JobTracker programa una tarea.

El rastreador de tareas envía mensajes de latidos a Jobtracker generalmente cada pocos minutos para asegurarse de que JobTracker esté activo y funcionando. El mensaje también informa a JobTracker sobre la cantidad de espacios disponibles, por lo que JobTracker puede mantenerse actualizado sobre dónde se puede delegar el trabajo del clúster.

19) Explique qué es Sequencefileinputformat.

Sequencefileinputformat se utiliza para leer archivos en secuencia. Es un formato de archivo binario comprimido específico que está optimizado para pasar datos entre la salida de un trabajo de MapReduce y la entrada de algún otro trabajo de MapReduce.

20) Explique qué hace la clase conf.setMapper.

Conf.setMapperclass establece la clase del asignador y todo lo relacionado con el trabajo del mapa, como leer datos y generar un par clave-valor fuera del asignador

21) Explica qué es Hadoop.

Es un marco de software de código abierto para almacenar datos y ejecutar aplicaciones en grupos de hardware básico. Proporciona una enorme potencia de procesamiento y almacenamiento masivo para cualquier tipo de datos.

22) Mencione cuál es la diferencia entre un RDBMS y Hadoop.

RDBMS Hadoop
RDBMS es un sistema de gestión de bases de datos relacionales Hadoop es una estructura plana basada en nodos
Se utiliza para el procesamiento OLTP mientras que Hadoop Actualmente se utiliza para análisis y procesamiento de BIG DATA
En RDBMS, el clúster de base de datos usa los mismos archivos de datos almacenados en un almacenamiento compartido En Hadoop, los datos de almacenamiento se pueden almacenar de forma independiente en cada nodo de procesamiento.
Necesita preprocesar los datos antes de almacenarlos no es necesario preprocesar los datos antes de almacenarlos

23) ¿Mencionar componentes centrales de Hadoop?

Los componentes principales de Hadoop incluyen,

  • HDFS
  • Mapa reducido

24) ¿Qué es NameNode en Hadoop?

NameNode en Hadoop es donde Hadoop almacena toda la información de ubicación de archivos en HDFS. Es el nodo principal en el que se ejecuta el rastreador de trabajos y consta de metadatos.

25) Mencione cuáles son los componentes de datos que utiliza Hadoop.

Los componentes de datos utilizados por Hadoop son

  • Cerdo
  • Colmena

26) Mencione cuál es el componente de almacenamiento de datos que utiliza Hadoop.

El componente de almacenamiento de datos utilizado por Hadoop es HBase.

27) Mencione cuáles son los formatos de entrada más comunes definidos en Hadoop.

Los formatos de entrada más comunes definidos en Hadoop son;

  • TextInputFormat
  • KeyValueInputFormat
  • SequenceFileInputFormat

28) En Hadoop, ¿qué es InputSplit?

Divide los archivos de entrada en fragmentos y asigna cada división a un asignador para su procesamiento.

29) Para un trabajo de Hadoop, ¿cómo escribirá un particionador personalizado?

Escribe un particionador personalizado para un trabajo de Hadoop, sigue la siguiente ruta

  • Cree una nueva clase que amplíe la clase del particionador
  • Método de anulación getPartition
  • En el contenedor que ejecuta MapReduce
  • Agregue el particionador personalizado al trabajo usando el método set Partitioner Class o agregue el particionador personalizado al trabajo como un archivo de configuración

30) Para un trabajo en Hadoop, ¿es posible cambiar el número de mapeadores que se crearán?

No, no es posible cambiar el número de mapeadores que se crearán. El número de mapeadores está determinado por el número de divisiones de entrada.

31) Explique qué es un archivo de secuencia en Hadoop.

Para almacenar pares de clave / valor binarios, se utiliza un archivo de secuencia. A diferencia del archivo comprimido normal, el archivo de secuencia admite la división incluso cuando los datos dentro del archivo están comprimidos.

32) Cuando Namenode está inactivo, ¿qué sucede con el rastreador de trabajos?

Namenode es el único punto de falla en HDFS, por lo que cuando Namenode está inactivo, su clúster se activará.

33) Explique cómo se realiza la indexación en HDFS.

Hadoop tiene una forma única de indexar. Una vez que los datos se almacenan según el tamaño del bloque, el HDFS seguirá almacenando la última parte de los datos que dice dónde estará la siguiente parte de los datos.

34) Explique ¿es posible buscar archivos usando comodines?

Sí, es posible buscar archivos utilizando comodines.

35) ¿Enumere los tres archivos de configuración de Hadoop?

Los tres archivos de configuración son

  • core-site.xml
  • mapred-site.xml
  • hdfs-site.xml

36) Explique cómo puede verificar si Namenode está funcionando además de usar el comando jps.

Además de usar el comando jps, para verificar si Namenode está funcionando, también puede usar

/etc/init.d/hadoop-0.20-estado de nodo de nombre.

37) Explique qué es "mapa" y qué es "reductor" en Hadoop.

En Hadoop, un mapa es una fase en la resolución de consultas HDFS. Un mapa lee datos de una ubicación de entrada y genera un par clave-valor de acuerdo con el tipo de entrada.

En Hadoop, un reductor recopila la salida generada por el asignador, la procesa y crea una salida final propia.

38) En Hadoop, ¿qué archivo controla los informes en Hadoop?

En Hadoop, el archivo hadoop-metrics.properties controla los informes.

39) ¿Para usar Hadoop, enumere los requisitos de red?

Para usar Hadoop, la lista de requisitos de red son:

  • Conexión SSH sin contraseña
  • Secure Shell (SSH) para iniciar procesos de servidor

40) Mencione qué es el conocimiento del estante.

El conocimiento del bastidor es la forma en que el nodo de nombre determina cómo colocar bloques según las definiciones del bastidor.

41) Explique qué es un rastreador de tareas en Hadoop.

Un Task Tracker en Hadoop es un demonio de nodo esclavo en el clúster que acepta tareas de un JobTracker. También envía mensajes de latido al JobTracker, cada pocos minutos, para confirmar que JobTracker todavía está activo.

42) Mencione qué demonios se ejecutan en un nodo maestro y en nodos esclavos.

  • Los demonios que se ejecutan en el nodo maestro es "NameNode"
  • Los demonios que se ejecutan en cada nodo esclavo son "Task Tracker" y "Data"

43) Explique cómo se puede depurar el código de Hadoop.

Los métodos populares para depurar el código de Hadoop son:

  • Mediante el uso de la interfaz web proporcionada por Hadoop framework
  • Utilizando contadores

44) Explique qué son los nodos de almacenamiento y computación.

  • El nodo de almacenamiento es la máquina o computadora donde reside su sistema de archivos para almacenar los datos de procesamiento.
  • El nodo de cálculo es la computadora o máquina donde se ejecutará su lógica comercial real.

45) Mencione ¿cuál es el uso del objeto de contexto?

El objeto de contexto permite al mapeador interactuar con el resto de Hadoop

sistema. Incluye datos de configuración para el trabajo, así como interfaces que le permiten emitir resultados.

46) Mencione cuál es el siguiente paso después de Mapper o MapTask.

El siguiente paso después de Mapper o MapTask es que la salida del Mapper se ordena y se crean particiones para la salida.

47) Mencione cuál es el número de particionador predeterminado en Hadoop.

En Hadoop, el particionador predeterminado es un particionador "Hash".

48) Explique cuál es el propósito de RecordReader en Hadoop.

En Hadoop, RecordReader carga los datos de su fuente y los convierte en pares (clave, valor) adecuados para que los lea el asignador.

49) Explique cómo se particionan los datos antes de enviarlos al reductor si no se define un particionador personalizado en Hadoop.

Si no se define ningún particionador personalizado en Hadoop, un particionador predeterminado calcula un valor hash para la clave y asigna la partición en función del resultado.

50) Explique qué sucede cuando Hadoop generó 50 tareas para un trabajo y una de las tareas falló.

Reiniciará la tarea nuevamente en algún otro TaskTracker si la tarea falla más que el límite definido.

51) Mencione cuál es la mejor manera de copiar archivos entre clústeres HDFS.

La mejor forma de copiar archivos entre clústeres HDFS es mediante el uso de varios nodos y el comando distcp, de modo que la carga de trabajo se comparta.

52) Mencione cuál es la diferencia entre HDFS y NAS.

Los bloques de datos HDFS se distribuyen en las unidades locales de todas las máquinas de un clúster, mientras que los datos del NAS se almacenan en hardware dedicado.

53) Mencione en qué se diferencia Hadoop de otras herramientas de procesamiento de datos.

En Hadoop, puede aumentar o disminuir la cantidad de mapeadores sin preocuparse por el volumen de datos a procesar.

54) Mencione qué trabajo hace la clase conf.

La clase de configuración de trabajos separa los diferentes trabajos que se ejecutan en el mismo clúster. Realiza la configuración de nivel de trabajo, como declarar un trabajo en un entorno real.

55) Mencione qué es el contrato de API de Hadoop MapReduce para una clase de clave y valor.

Para una clase de clave y valor, hay dos contratos de API de MapReduce de Hadoop

  • El valor debe definir la interfaz org.apache.hadoop.io.Writable
  • La clave debe definir la interfaz org.apache.hadoop.io.WritableComparable

56) Mencione cuáles son los tres modos en los que se puede ejecutar Hadoop.

Los tres modos en los que se puede ejecutar Hadoop son

  • Modo pseudodistribuido
  • Modo autónomo (local)
  • Modo completamente distribuido

57) Mencione qué hace el formato de entrada de texto.

El formato de entrada de texto creará un objeto de línea que es un número hexadecimal. El valor se considera como un texto de línea completa, mientras que la clave se considera como un objeto de línea. El asignador recibirá el valor como parámetro de 'texto' mientras que la clave como parámetro de 'escritura larga'.

58) Mencione cuántos InputSplits hace un Hadoop Framework.

Hadoop hará 5 divisiones

  • 1 división para archivos de 64K
  • 2 dividido para archivos de 65 MB
  • 2 divisiones para archivos de 127 MB

59) Mencione qué es la caché distribuida en Hadoop.

La caché distribuida en Hadoop es una función proporcionada por el marco MapReduce. En el momento de la ejecución del trabajo, se utiliza para almacenar en caché el archivo. El Framework copia los archivos necesarios al nodo esclavo antes de la ejecución de cualquier tarea en ese nodo.

60) Explique cómo Hadoop Classpath juega un papel vital al detener o iniciar los demonios de Hadoop.

Classpath constará de una lista de directorios que contienen archivos jar para detener o iniciar demonios.

Articulos interesantes...