[ https://issues.apache.org/jira/browse/PIG-760?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12768956#action_12768956 ]
Dmitriy V. Ryaboy commented on PIG-760: --------------------------------------- David, If / when I get complex schemas to work, this could theoretically be promoted to PigStorage proper, which would be cool. For now, if you try to deserialize a complex schema, everything blows up.. So that's not so good (especially since I let you serialize complex schemas! Actually maybe I should turn that off). I'll add some docs on the next iteration, good call. Briefly -- it's a JSON representation of the ResourceSchema, as described on the LoadStore redesign proposal: http://wiki.apache.org/pig/LoadStoreRedesignProposal . Once you know what the fields are, it's pretty easy to read; the one complexity is that types are represented using constants from the DataType class, which are not publicly documented. > Serialize schemas for PigStorage() and other storage types. > ----------------------------------------------------------- > > Key: PIG-760 > URL: https://issues.apache.org/jira/browse/PIG-760 > Project: Pig > Issue Type: New Feature > Reporter: David Ciemiewicz > Assignee: Dmitriy V. Ryaboy > Fix For: 0.6.0 > > Attachments: pigstorageschema-2.patch, pigstorageschema.patch > > > I'm finding PigStorage() really convenient for storage and data interchange > because it compresses well and imports into Excel and other analysis > environments well. > However, it is a pain when it comes to maintenance because the columns are in > fixed locations and I'd like to add columns in some cases. > It would be great if load PigStorage() could read a default schema from a > .schema file stored with the data and if store PigStorage() could store a > .schema file with the data. > I have tested this out and both Hadoop HDFS and Pig in -exectype local mode > will ignore a file called .schema in a directory of part files. > So, for example, if I have a chain of Pig scripts I execute such as: > A = load 'data-1' using PigStorage() as ( a: int , b: int ); > store A into 'data-2' using PigStorage(); > B = load 'data-2' using PigStorage(); > describe B; > describe B should output something like { a: int, b: int } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.