[ 
http://issues.apache.org/jira/browse/HADOOP-54?page=comments#action_12418273 ] 

eric baldeschwieler commented on HADOOP-54:
-------------------------------------------

I've been thinking about this.  I think we should use a very simple scheme like 
the current sequence file.  The writer would take a configurable buffer, maybe 
10 meg by default, fill that with key/values and then compress them.  The 
result would be stored with start markers like the current sequence file, so 
the partitioning logic could remain unchanged.

Within a block, I think we should compress the keys together in a block and the 
values in a following block.  Both blocks' lengths should be stored, so that 
one can quickly scan the keys and then scan only as far as needed in the value 
blocks.  This would allow very efficient sub-sampling when you have large data 
blocks.  Which could be a life saver in some of our typical apps.  You'll also 
get better compression, since you'll be compressing like items together.

Thoughts?

> SequenceFile should compress blocks, not individual entries
> -----------------------------------------------------------
>
>          Key: HADOOP-54
>          URL: http://issues.apache.org/jira/browse/HADOOP-54
>      Project: Hadoop
>         Type: Improvement

>   Components: io
>     Versions: 0.2.0
>     Reporter: Doug Cutting
>     Assignee: Michel Tourn
>      Fix For: 0.4.0

>
> SequenceFile will optionally compress individual values.  But both 
> compression and performance would be much better if sequences of keys and 
> values are compressed together.  Sync marks should only be placed between 
> blocks.  This will require some changes to MapFile too, so that all file 
> positions stored there are the positions of blocks, not entries within 
> blocks.  Probably this can be accomplished by adding a 
> getBlockStartPosition() method to SequenceFile.Writer.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to