You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Owen O'Malley (JIRA)" <ji...@apache.org> on 2008/02/08 07:01:08 UTC

[jira] Moved: (HBASE-427) org.onelab.filter.BloomFilter class uses 8X the memory it should be using

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

Owen O'Malley moved HADOOP-2588 to HBASE-427:
---------------------------------------------

    Affects Version/s:     (was: 0.16.0)
                  Key: HBASE-427  (was: HADOOP-2588)
              Project: Hadoop HBase  (was: Hadoop Core)

> org.onelab.filter.BloomFilter class uses 8X the memory it should be using
> -------------------------------------------------------------------------
>
>                 Key: HBASE-427
>                 URL: https://issues.apache.org/jira/browse/HBASE-427
>             Project: Hadoop HBase
>          Issue Type: Improvement
>         Environment: n/a
>            Reporter: Ian Clarke
>            Priority: Trivial
>             Fix For: 0.16.0
>
>         Attachments: patch.txt
>
>
> The org.onelab.filter.BloomFilter uses a boolean[] to store the filter, however in most Java implementations this will use a byte per bit stored, meaning that 8X the actual used memory is required.  This is unfortunate as the whole point of a BloomFilter is to save memory.
> As a sidebar, the implementation looks a bit shaky in other ways, such as the way hashes are generated from a SHA1 digest in the Filter class, such as the way that it just assumes the digestBytes array will be long enough in the hash() method.
> I discovered this while looking for a good Bloom Filter implementation to use in my own project.  In the end I went ahead and implemented my own, its very simple and pretty elegant (even if I do say so myself ;) - you are welcome to use it:
> http://locut.us/blog/2008/01/12/a-decent-stand-alone-java-bloom-filter-implementation/

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