pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Coveney" <jcove...@gmail.com>
Subject Re: Review Request: SchemaTuple in Pig
Date Fri, 06 Apr 2012 17:20:20 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/4651/
-----------------------------------------------------------

(Updated 2012-04-06 17:20:20.566618)


Review request for pig and Julien Le Dem.


Summary
-------

This work builds on Dmitriy's PrimitiveTuple work. The idea is that, knowing the Schema on
the frontend, we can code generate Tuples which can be used for fun and profit. In rudimentary
tests, the memory efficiency is 2-4x better, and it's ~15% smaller serialized (heavily heavily
depends on the data, though). Need to do get/set tests, but assuming that it's on par (or
even faster) than Tuple, the memory gain is huge.

Need to clean up the code and add tests.

Right now, it generates a SchemaTuple for every inputSchema and outputSchema given to UDF's.
The next step is to make a SchemaBag, where I think the serialization savings will be really
huge.

Needs tests and comments, but I want the code to settle a bit.


This addresses bug PIG-2632.
    https://issues.apache.org/jira/browse/PIG-2632


Diffs
-----

  trunk/src/org/apache/pig/data/TypeAwareTuple.java 1309628 
  trunk/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/expressionOperators/POUserFunc.java
1309628 
  trunk/src/org/apache/pig/data/BinInterSedes.java 1309628 
  trunk/src/org/apache/pig/data/PrimitiveTuple.java 1309628 
  trunk/src/org/apache/pig/data/SchemaTuple.java PRE-CREATION 
  trunk/src/org/apache/pig/data/TupleFactory.java 1309628 
  trunk/src/org/apache/pig/impl/PigContext.java 1309628 
  trunk/src/org/apache/pig/newplan/logical/expression/UserFuncExpression.java 1309628 

Diff: https://reviews.apache.org/r/4651/diff


Testing
-------


Thanks,

Jonathan


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message