¿Hive se usa principalmente para tablas externas (por ejemplo, datos existentes en HDFS)?

En mi experiencia, crear tablas a partir de datos existentes es un paso inicial común para un proceso ETL en Hive. Por ejemplo, puede tener exportaciones desde una tienda NoSQL como MongoFB en formato JSON, exportaciones CSV desde un SQL almacenado y archivos de texto como registros.

El primer paso sería crear tablas sobre los datos para hacerlos accesibles. Los datos CSV generalmente se pueden usar sin trabajo adicional en los siguientes pasos. Los datos JSON requieren análisis, es decir, definir una tabla con cada fila que consta solo de una columna de cadena con el objeto JSON y luego analizarla en una instrucción de selección con get_json_object (), por ejemplo.

Los resultados intermedios, por ejemplo, de unir y transformar los datos, se pueden almacenar en tablas HDFS si se usan varias veces en la siguiente etapa para cambiar el tiempo de procesamiento por espacio. Usar la compresión RCFile y BLOCK con Snappy es una buena práctica en la mayoría de los casos.

En el paso final, los datos se generan a partir de los pasos intermedios para la exportación. Esos podrían ser datos CSV que se importarán en almacenes SQL, por ejemplo, datos agregados para analistas, a través de sqoop o formatos personalizados, o incluso transmisión de datos en trabajos de solo mapa a los puntos finales de servicios de la red.

S3 puede desempeñar un papel importante además de HDFS si trabaja con AWS. S3 es un sumidero de datos útil y una ubicación de respaldo para los procesos. La capacidad de crear una tabla que haga referencia a una carpeta S3 simplifica los flujos de trabajo en estas situaciones. El primer paso del escenario anterior se puede vincular a S3 y las salidas posteriores se pueden almacenar allí. Sin embargo, los resultados intermedios se almacenan mejor en HDFS para retener la localidad y el rendimiento de los datos. Recuperar datos de S3 no es tan rápido y barato como HDFS.

He usado Hive para ETL desde tablas externas en tablas Hive RCFile, que a menudo particiono o utilizo para un rendimiento adicional. Tanto el análisis de último esquema como el análisis de cumplimiento de esquema son importantes, y Hive los admite bastante bien.

No en mi experiencia.

More Interesting

¿Puedo ingresar a la ciencia de datos con un GPA bajo?

¿Qué tan relevante es el análisis de Big Data para la economía global actual?

¿Cuál es la naturaleza del big data?

¿Qué tipo de aprendizaje automático debo usar para la clasificación de varias clases si la longitud de mi entrada es diferente en cada ejemplo de entrenamiento?

¿Por qué debería usar anaconda en lugar de las distribuciones tradicionales de Python para la ciencia de datos?

¿Qué tipo de datos predice con precisión el aprendizaje automático?

Para alguien sin experiencia en ciencia de datos, ¿cómo me convenzo de que los modelos predictivos son importantes, ya que no garantizan eventos futuros?

¿Cuál es la configuración recomendada para una aplicación de Big Data?

¿Cómo se compara el programa inmersivo de ciencia de datos de la Asamblea General con los cursos de ciencia de datos, inteligencia artificial y aprendizaje automático / aprendizaje profundo de los MOOC?

¿Hay alguna pregunta moral al trabajar con Big Data?

Soy estudiante de primer año del programa de maestría en análisis y recuperación de información en la Universidad de Michigan. Rutinariamente trabajo con cerdo y colmena y soy muy hábil con Python y R, pero ¿son suficientes o necesito ser doctorado antes de comenzar una carrera en ciencias de datos?

¿Cuáles son las oportunidades de investigación para MS Data Science en la Universidad de Minnesota, Twin Cities?

¿Habrá algún problema para obtener F1 VISA para el programa de ciencia de datos de 1 año GalvanizeU, San Francisco?

¿Cómo un nuevo graduado que no es CS ingresa a la ciencia de datos?

¿En cuál debo inscribirme, Udacity data science nanodegree o diploma actualizado de PG en análisis de datos?