Apache > Pig

Welcome to Apache Pig!

Apache Pig is a 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 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, 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). Pig's language layer currently consists of a textual language called Pig Latin, which has the following key properties:


Apache Pig 0.13.0 is released!

This release includes several new features such as pluggable execution engines (to allow pig run on non-mapreduce engines in future), auto-local mode (to jobs with small input data size to run in-process), fetch optimization (to improve interactiveness of grunt), fixed counters for local-mode, support for user level jar cache, support for blacklisting and whitelisting pig commands. This also includes several performance fixes and debuggability features. A few non-backwards compatible interface modifications have been introduced in this release to make pig work with non-mapreduce engines (eg- PigProgressNotificationListener). See details on the release page.

Getting Started

Getting Involved

Pig is an open source volunteer project under the Apache Software Foundation. We encourage you to learn about the project and contribute your expertise. Here are some starter links:

  1. How to contribute
  2. Give us feedback: What can we do better?
  3. Join the mailing list: Meet the community.