Pig Representa Big Data como flujos de datos. Pig es una plataforma o herramienta de alto nivel que se utiliza para procesar grandes conjuntos de datos. Proporciona un alto nivel de abstracción para el procesamiento en MapReduce. Proporciona un lenguaje de secuencias de comandos de alto nivel, conocido como Pig Latin , que se utiliza para desarrollar los códigos de análisis de datos. Primero, para procesar los datos que se almacenan en el HDFS, los programadores escribirán los scripts utilizando el lenguaje Pig Latin. Pig Engine internamente (un componente de Apache Pig) convirtió todos estos scripts en un mapa específico y redujo la tarea. Pero estos no son visibles para los programadores para proporcionar un alto nivel de abstracción. Pig Latin y Pig Engine son los dos componentes principales de la herramienta Apache Pig. El resultado de Pig siempre se almacena en el HDFS.
Nota: Pig Engine tiene dos tipos de entorno de ejecución, es decir, un entorno de ejecución local en una sola JVM (utilizado cuando el conjunto de datos es de tamaño pequeño) y un entorno de ejecución distribuido en un Hadoop Cluster.
Need of Pig: una limitación de MapReduce es que el ciclo de desarrollo es muy largo. Escribir el reductor y el mapeador, compilar el paquete del código, enviar el trabajo y recuperar la salida es una tarea que requiere mucho tiempo. Apache Pig reduce el tiempo de desarrollo utilizando el enfoque de consultas múltiples. Además, Pig es beneficioso para los programadores que no tienen experiencia en Java . Se pueden escribir 200 líneas de código Java en solo 10 líneas usando el lenguaje Pig Latin. Los programadores que tienen conocimientos de SQL necesitaban menos esfuerzo para aprender Pig Latin.
- Utiliza un enfoque de consulta que da como resultado la reducción de la longitud del código.
- Pig Latin es un lenguaje similar a SQL.
- Proporciona muchos operadores incorporados.
- Proporciona tipos de datos anidados (tuplas, bolsas, mapa).
Evolución de Pig: A principios de 2006, los investigadores de Yahoo desarrollaron Apache Pig. En ese momento, la idea principal para desarrollar Pig era ejecutar los trabajos de MapReduce en conjuntos de datos extremadamente grandes. En el año 2007, se trasladó a Apache Software Foundation (ASF), lo que lo convierte en un proyecto de código abierto. La primera versión ( 0.1 ) de Pig llegó en el año 2008. La última versión de Apache Pig es 0.18 , que llegó en el año 2017.
Características de Apache Pig:
- Para realizar varias operaciones, Apache Pig proporciona conjuntos completos de operadores como filtros, unión, ordenación, etc.
- Fácil de aprender, leer y escribir. Especialmente para el programador de SQL, Apache Pig es una bendición.
- Apache Pig es extensible para que pueda crear sus propias funciones y procesos definidos por el usuario.
- La operación de unión es fácil en Apache Pig.
- Menos líneas de código.
- Apache Pig permite divisiones en la canalización.
- La estructura de datos es multivaluada, anidada y más rica.
- Pig puede manejar el análisis de datos estructurados y no estructurados.
cerdo apache | Mapa reducido |
---|---|
Es un lenguaje de scripting. | Es un lenguaje de programación compilado. |
La abstracción está en un nivel superior. | La abstracción está en un nivel inferior. |
Tiene menos línea de código en comparación con MapReduce. | Líneas de código es más. |
Se necesita menos esfuerzo para Apache Pig. | Se requieren más esfuerzos de desarrollo para MapReduce. |
La eficiencia del código es menor en comparación con MapReduce. | En comparación con Pig, la eficiencia del código es mayor. |
Aplicaciones de Apache Pig:
- Para explorar grandes conjuntos de datos, se utiliza Pig Scripting.
- Proporciona soporte en grandes conjuntos de datos para consultas Ad-hoc.
- En la creación de prototipos de algoritmos de procesamiento de grandes conjuntos de datos.
- Requerido para procesar las cargas de datos sensibles al tiempo.
- Para recopilar grandes cantidades de conjuntos de datos en forma de registros de búsqueda y rastreos web.
- Se utiliza cuando se necesitan conocimientos analíticos utilizando el muestreo.
Tipos de modelos de datos en Apache Pig: consta de los 4 tipos de modelos de datos de la siguiente manera:
- Átomo : es un valor de datos atómicos que se utiliza para almacenar como una string. El uso principal de este modelo es que se puede usar como un número y también como una string.
- Tupla : Es un conjunto ordenado de los campos.
- Bolsa : Es una colección de las tuplas.
- Mapa : Es un conjunto de pares clave/valor.
Publicación traducida automáticamente
Artículo escrito por romin_vaghani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA