pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joseph Adler (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PIG-3015) Rewrite of AvroStorage
Date Mon, 15 Apr 2013 23:16:17 GMT

    [ https://issues.apache.org/jira/browse/PIG-3015?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13632347#comment-13632347
] 

Joseph Adler commented on PIG-3015:
-----------------------------------

Sorry to have taken so long to reply. 

I map any Pig type to a union of an Avro Type and Null. Here are the type mappings that I
implemented:

Bag -> Array
Big Chararray -> String
Byte Array -> Bytes
Chararray -> String
Datetime -> Long
Double -> Double
Float -> Float
Integer -> Int
Map -> Map
Null -> Null
Tuple -> Record

Byte, Error, Generic Writable, Internal Map, Unknown aren't mapped to anything yet. Do we
need to store these as well?
                
> Rewrite of AvroStorage
> ----------------------
>
>                 Key: PIG-3015
>                 URL: https://issues.apache.org/jira/browse/PIG-3015
>             Project: Pig
>          Issue Type: Improvement
>          Components: piggybank
>            Reporter: Joseph Adler
>            Assignee: Joseph Adler
>         Attachments: bad.avro, good.avro, PIG-3015-10.patch, PIG-3015-11.patch, PIG-3015-2.patch,
PIG-3015-3.patch, PIG-3015-4.patch, PIG-3015-5.patch, PIG-3015-6.patch, PIG-3015-7.patch,
PIG-3015-9.patch, PIG-3015-doc-2.patch, PIG-3015-doc.patch, TestInput.java, Test.java, with_dates.pig
>
>
> The current AvroStorage implementation has a lot of issues: it requires old versions
of Avro, it copies data much more than needed, and it's verbose and complicated. (One pet
peeve of mine is that old versions of Avro don't support Snappy compression.)
> I rewrote AvroStorage from scratch to fix these issues. In early tests, the new implementation
is significantly faster, and the code is a lot simpler. Rewriting AvroStorage also enabled
me to implement support for Trevni (as TrevniStorage).
> I'm opening this ticket to facilitate discussion while I figure out the best way to contribute
the changes back to Apache.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message