Definición: ¿Qué significa Apache Pig?
Apache Pig es una plataforma que se utiliza para analizar grandes conjuntos de datos. Consiste en un lenguaje de alto nivel para expresar programas de análisis de datos, junto con la infraestructura para evaluar estos programas. Una de las características más importantes de Pig es que su estructura responde a una paralelización significativa.
Pig opera en la plataforma Hadoop, escribe datos y lee datos del Sistema de archivos distribuido de Hadoop (HDFS) y realiza el procesamiento por medio de uno o más trabajos de MapReduce. Apache Pig está disponible como código abierto.
Apache Pig también se conoce como lenguaje de programación Pig o Hadoop Pig.
Techinfo explica Apache Pig
Apache Pig tiene dos partes: lenguaje Pig Latin y motor Pig. El lenguaje Pig Latin es un lenguaje de programación que permite a los usuarios ilustrar la forma en que los datos fluyen de una o más entradas deben leerse y procesarse, y la ubicación en la que deben almacenarse.
Algunas de las propiedades clave de Pig Latin son las siguientes:
- Fácil de programar: las tareas complejas que consisten en varias transformaciones de datos interconectadas están claramente codificadas como secuencias de flujo de datos. Esto los hace fáciles de escribir, comprender y mantener.
- Posibilidades de optimización: La forma en que se codifican las tareas permite al sistema optimizar la ejecución automática. Esto permite al usuario prestar atención a la semántica en lugar de a la eficiencia.
- Extensibilidad: los usuarios pueden crear sus propias funciones para llevar a cabo un procesamiento con fines especiales. El motor Pig es responsable de la ejecución del flujo de datos escrito en Pig Latin. Al igual que el diseño de un sistema de gestión de bases de datos relacionales estándar (RDBMS), Apache Pig consta de un analizador, un optimizador y un verificador de tipos, además de operadores que realizan el procesamiento de datos. Pig no incluye transacciones, un catálogo de datos o la capacidad de manejar directamente el almacenamiento de datos o emplear el marco de ejecución.