First, you need to learn PigLatin language. The best source for learning PigLatin is:
Be sure to sign up pig mailing list.
Then checkout Pig source code using svn:
svn co http://svn.apache.org/repos/asf/pig/trunk
Set up environment for Eclipse.
Learn more about Pig internal at Pig paper at VLDB 2009.
Learn the process to submit a patch in HowToContribute.
Browse through Pig code. Some good start points are:
- QueryLexer.g, QueryParser.g, LogicalPlanGenerator.g: Pig parser, LogicalPlan construction
- LogToPhyTranslationVisitor: From logical plan to physical plan
- MRCompiler: From physical plan to map-reduce plan
- JobControlCompiler: From map-reduce plan to hadoop job
- MapReduceLauncher: Hadoop launcher
- PigMapBase: map class for Pig
- PigMapReduce: reduce class for Pig
Wanna find something to get start? Here is a list of Jiras to warm up.