Apache Pig is an open source and free platform for analyzing large data sets that consists of a high-level language for expressing data analysis programs, coupled with infrastructure for evaluating these programs.
The salient property of Apache Pig programs is that their structure is amenable to substantial parallelization, which in turns enables them to handle very large data sets.
At the present time, Apache Pig's infrastructure layer consists of a compiler that produces sequences of Map-Reduce programs, for which large-scale parallel implementations already exist (e.g., the Hadoop subproject).
Apache Pig's language layer currently consists of a textual language called Pig Latin, which has the following key properties:
· 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.
Apache Pig is cross-platform and it works on Mac OS X, Windows and Linux.
· Java 1.6.x or later
· Hadoop 0.18.x
What's New in This Release: [ read full changelog ]
· PIG-3256: Upgrade jython to 2.5.3 (legal concern) (daijy)
· PIG-2988: start deploying pigunit maven artifact part of Pig release process (njw45 via rohini)
· PIG-3148: OutOfMemory exception while spilling stale DefaultDataBag. Extra option to gc() before spilling large bag. (knoguchi via rohini)
· PIG-3216: Groovy UDFs documentation has minor typos (herberts via rohini)
· PIG-3202: CUBE operator not documented in user docs (prasanth_j via billgraham)
· PIG-3252: AvroStorage gives wrong schema for schemas with named records (mwagner via cheolsoo)
· PIG-3132: NPE when illustrating a relation with HCatLoader (daijy)
· PIG-3194: Changes to ObjectSerializer.java break compatibility with Hadoop 0.20.2 (prkommireddi via dvryaboy)
· PIG-3241: ConcurrentModificationException in POPartialAgg (dvryaboy)
· PIG-3144: Erroneous map entry alias resolution leading to "Duplicate schema alias" errors (jcoveney via cheolsoo)
· PIG-3212: Race Conditions in POSort and (Internal)SortedBag during Pro...