[ 
https://issues.apache.org/jira/browse/MAHOUT-317?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Drew Farris updated MAHOUT-317:
-------------------------------

    Attachment: MAHOUT-317.patch

Replaced GramTuple with GramKey which achieves the same end in a more efficient 
manner; it implements BinaryComparable.

There doesn't seem to be a good way around including the full string in the key 
for the secondary sort, in this patch it is stored in a alongside the string 
from the primary gram in a single byte[]. Separate offsets are maintained for 
the end of the primary key and the full length to support grouping.

Ankur mentioned the use of a combiner, but one is already included in the 
patch, Ankur if what you have is mind is substantially different from what's 
already there, please elaborate.





> Collocations: Eliminate in-memory frequency calculation
> -------------------------------------------------------
>
>                 Key: MAHOUT-317
>                 URL: https://issues.apache.org/jira/browse/MAHOUT-317
>             Project: Mahout
>          Issue Type: Improvement
>    Affects Versions: 0.3
>            Reporter: Drew Farris
>             Fix For: 0.3
>
>         Attachments: MAHOUT-317.patch, MAHOUT-317.patch, MAHOUT-317.patch
>
>
> see: 
> http://www.lucidimagination.com/search/document/ae484d53e969250e/who_owns_mahout_bucket_on_s3
> The collocation code currently uses maps in the CollocCombiner and 
> CollocReducer to perform frequency calculations which can cause the process 
> to exceed the heap space if a large number of ngrams exist for any given 
> subgram.
> Convert the code to use a composite key / secondary sort to avoid the need 
> for in-memory map for frequency calculations. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to