Preguntas y respuestas básicas de la entrevista de Hive 2022

Publicado: 2021-01-08

Las entrevistas de Big Data se pueden realizar en líneas generales (en las que debe tener una idea general sobre los marcos y herramientas populares de Big Data) o pueden centrarse en un marco o herramienta en particular. Hoy nos vamos a centrar en un marco de Big Data ampliamente utilizado: Apache Hive.

Hemos creado esta lista de preguntas de la entrevista de Apache Hive para ayudarlo a tener una mejor idea sobre el tipo de preguntas que los empleadores suelen hacer durante las entrevistas de Hadoop relacionadas con Hive.

Entonces, si eres alguien que desea lograr la entrevista de Hive, ¡sigue leyendo hasta el final!

  1. ¿Qué es Apache Hive?

Apache Hive es un marco de almacenamiento de datos construido sobre Hadoop. Se utiliza principalmente para analizar datos estructurados y semiestructurados. Hive está diseñado para proyectar la estructura de los datos y ejecutar consultas escritas en HQL (Lenguaje de consulta de Hive), similar al de las declaraciones SQL. Además, el compilador de Hive transforma estas consultas en trabajos de reducción de mapas.

  1. ¿Qué tipo de aplicaciones admite Hive?

Hive puede admitir cualquier aplicación escrita en Python, Java, C++, Ruby y PHP.

  1. ¿A qué te refieres con Metastore? ¿Por qué Hive no almacena los metadatos en HDFS?

Metastore es un repositorio en Hive que almacena la información de metadatos. Lo hace aprovechando RDBMS junto con una capa ORM (Object Relational Model) de código abierto llamada Data Nucleus que convierte la representación del objeto en el esquema relacional y viceversa.

Hive almacena información de metadatos mediante RDBMS y no HDFS, ya que las operaciones de lectura/escritura mediante HDFS son un proceso lento. RDBMS tiene una ventaja sobre él, ya que ayuda a lograr una baja latencia.

  1. Diferenciar entre Metastore local y remoto.

Un metastore local se ejecuta en la misma JVM en la que se ejecuta el servicio Hive. Puede conectarse a una base de datos que se ejecuta en una JVM separada en la misma máquina o en una máquina remota. Por el contrario, un metastore remoto se ejecuta en una JVM separada y no en la que se ejecuta el servicio Hive.

  1. ¿Qué quiere decir con una partición en Hive? ¿Cuál es su importancia?

En Hive, las tablas se clasifican y organizan en particiones para organizar juntos tipos de datos similares, ya sea según una columna o clave de partición. Entonces, una partición es en realidad un subdirectorio en el directorio de la tabla. Una tabla puede tener más de una clave de partición para una partición en particular.

A través de la partición, puede lograr granularidad en una tabla de Hive. Esto ayuda a reducir la latencia de la consulta, ya que solo analiza los datos particionados relevantes en lugar del conjunto de datos completo.

  1. ¿Qué es una variable de colmena?

Una variable de Hive se crea en el entorno de Hive desarrollado por los lenguajes de secuencias de comandos de Hive. Usando el comando fuente, transfiere valores a las consultas de Hive cuando la consulta comienza a ejecutarse.

  1. ¿Para qué tipo de aplicaciones de almacenamiento de datos es adecuado Hive?

Las normas de diseño de Hadoop y HDFS imponen ciertas limitaciones a las capacidades de Hive. Además, no tiene las funciones necesarias requeridas para OLTP (procesamiento de transacciones en línea). Hive es más adecuado para aplicaciones de almacenamiento de datos en conjuntos de datos masivos que requieren:

  • Análisis de los datos relativamente estáticos.
  • Menos tiempo de respuesta.
  • Sin cambios dinámicos en los datos.
  1. ¿Qué es un índice Hive?

El índice de Hive es un método de optimización de consultas de Hive. Se utiliza para acelerar el acceso a una columna o conjunto de columnas específico en una base de datos de Hive. Al utilizar un índice de Hive, el sistema de base de datos no requiere leer todas las filas de una tabla para encontrar los datos elegidos.

  1. ¿Por qué necesita Hcatolog?

Se requiere Hcatalog para compartir estructuras de datos con sistemas externos. Proporciona acceso al metaalmacén de Hive, por lo que puede leer/escribir datos en el almacén de datos de Hive.

  1. ¿Nombre los componentes de un procesador de consultas de Hive?

Los componentes de un procesador de consultas de Hive son:

  • Plan Lógico de Generación.
  • Plan Físico de Generación.
  • Motor de ejecución.
  • UDF y UDAF.
  • Operadores.
  • Optimizador.
  • analizador.
  • Analizador semántico.
  • Tipo Comprobación.
  1. ¿Cómo ayudan las tablas de formato ORC a Hive a mejorar el rendimiento?

Con el formato de archivo ORC (Optimized Row Columnar), puede almacenar los datos de Hive de manera eficiente, ya que ayuda a simplificar numerosas limitaciones del formato de archivo de Hive.

  1. ¿Cuál es la función del Object-Inspector?

En Hive, Object-Inspector ayuda a analizar la estructura interna de un objeto de fila y la estructura individual de las columnas. Además, también ofrece formas de acceder a objetos complejos que se pueden almacenar en diferentes formatos en la memoria.

  1. ¿Cuál es la diferencia entre Hive y HBase?

Los puntos clave de diferenciación entre Hive y HBase son:

  • Hive es un marco de almacenamiento de datos, mientras que HBase es una base de datos NoSQL.
  • Si bien Hive puede ejecutar la mayoría de las consultas SQL, HBase no permite consultas SQL.
  • Hive no admite operaciones de inserción, actualización y eliminación a nivel de registro en una tabla, pero HBase admite estas funciones.
  • Hive se ejecuta sobre MapReduce, pero HBase se ejecuta sobre HDFS.
  1. ¿Qué es una tabla administrada y una tabla externa?

En una tabla administrada, tanto la información de los metadatos como los datos de la tabla se eliminan del directorio del almacén de Hive si abandona o sale de una tabla administrada. Sin embargo, en una tabla externa, solo se elimina la información de metadatos asociada con la tabla, mientras que los datos de la tabla se conservan en el HDFS.

  1. Nombre los diferentes componentes de una arquitectura Hive.

Hay 5 componentes de una arquitectura Hive:

  1. Interfaz de usuario: permite al usuario enviar consultas y otras operaciones al sistema Hive. La interfaz de usuario es compatible con la interfaz de usuario web de Hive, la línea de comandos de Hive y Hive HD Insight.
  2. Controlador: crea un identificador de sesión para las consultas y luego envía las consultas al compilador para crear un plan de ejecución para las mismas.
  3. Metastore: contiene los datos estructurados junto con toda la información en diferentes tablas y particiones en el almacén (con atributos). Al recibir la solicitud de metadatos, envía los metadatos al compilador para ejecutar las consultas.
  4. Compilador: genera el plan de ejecución para analizar las consultas, realizar un análisis semántico en diferentes bloques de consulta y generar una expresión de consulta.
  5. Motor de ejecución: mientras el compilador elabora el plan de ejecución, el motor de ejecución lo implementa. Gestiona las dependencias de las distintas etapas del plan.

Obviamente, hay más en Hive que solo estas 15 preguntas. Estos son solo los conceptos básicos que lo ayudarán a familiarizarse con Hive.

Si está interesado en saber más sobre Big Data, consulte nuestro programa PG Diploma in Software Development Specialization in Big Data, que está diseñado para profesionales que trabajan y proporciona más de 7 estudios de casos y proyectos, cubre 14 lenguajes y herramientas de programación, prácticas talleres, más de 400 horas de aprendizaje riguroso y asistencia para la colocación laboral con las mejores empresas.

¡Feliz aprendizaje!

Liderar la revolución tecnológica basada en datos

Más de 400 horas de aprendizaje. 14 idiomas y herramientas. Estado de ex alumnos del IIIT-B.
Programa de Certificado Avanzado en Big Data de IIIT Bangalore