Apache Pig is a platform developed to help users analyze large data sets. Apache Pig contains a high-level language for expressing data analysis programs and an infrastructure that can help evaluate applications.
Pig programs come with a structure that can handle parallelization, which enables them to handle very large data sets.
Here are some key features of "Apache Pig":
Ease of programming:
· It is trivial to achieve parallel execution of simple, "embarrassingly parallel" data analysis tasks. Complex tasks comprised of multiple interrelated data transformations are explicitly encoded as data flow sequences, making them easy to write, understand, and maintain.
Optimization opportunities:
· The way in which tasks are encoded permits the system to optimize their execution automatically, allowing the user to focus on semantics rather than efficiency.
Extensibility:
· Users can create their own functions to do special-purpose processing.
Requirements:
· Java
· Ant
· Cygwin
What's New in This Release: [ read full changelog ]
· New RANK, CUBE and ROLLUP operators
· New DateType data type
· Support for Groovy UDFs
· Support for loading macros from jars
· Support for custom PigReducerEstimators
· Support for custom PigProgressNotificatonListeners
· Support for schema-based Tuples for reduced memory footprint
· Support for passing environment variables to streaming jobs
· Support for invoking HCatalog DDL commands from Pig
· Support for .pigbootup file for defaults
· Improved support for working with Maps in Pig scripts
· Grunt improvements: history and clear
· New cleanupOnSuccess method in StoreFunc interface
· UDF timing utilities
· UDF lifecycle improvements
· UDFs for DateType support
· Performance improvements to merge join
· Performance improvements to local mode
· Performance improvements to in memory aggregation
· Performance improvements to Spillable management
· Improvements to HBaseStorage and AvroStorage
· Penny has been removed
· 300+ bug fixes