[hibernate-dev] hibernate-dev Digest, Vol 56, Issue 20

Marc Schipperheyn m.schipperheyn at gmail.com
Mon Feb 28 13:56:32 EST 2011

My two cents:
* Most of the magic of Bobo Browse apart from the faceting itself is in the
performance. I think the challenge with any kind of faceting is keeping it
performant which Bobo achieves through all sorts of optimized caches.
* The problem for me with Bobo is real time updating the Bobo index which
happens only through an add on that is not so easy, for me, to integrate
with HibSearch.

Where I spent most of my time customizing Bobo for my needs is:
* label conversion: converting values to readable labels and back. E.g. you
store a date and want to display facets based on "yesterday" etc.
* value conversion: converting a value to another value
* Working with RunTime values, such as dates, vs normal pre determined
* debugging issues. The ability to be able to see what is happening under
the hood is crucial because the index is much harder to access than a
relational database
* loading category specific facet values such as price ranges etc

Facets I use are
* Simple facets: just facet on a value
* Location facets: geo locating based on rage in miles or kilometers
* Path facets: drilling down through a facet, e.g. from Cities to
* Pre determined ranges, often filtered based on category specific values
* Multi value facets, where you select based on property that can have
multiple values

Not sure if this helps but there it is. Bobo is a great product but it took
me a lot of time to get it "right"

Vriendelijke groet,


MSW BV | Nova Zemblastraat 12-a, 1013 RK, Amsterdam | KvK: 02090184
m: +31 6 218 03 003 | skype: mschipperheyn | Twitter: mschipperheyn

On Mon, Feb 28, 2011 at 7:39 PM, Marc Schipperheyn <m.schipperheyn at gmail.com
> wrote:

> On Mon, Feb 28, 2011 at 7:29 PM, Hardy Ferentschik <
> hibernate at ferentschik.de> wrote:
>> Hi Marc,
>> thanks for your feedback. Answers inline
>> On Mon, 28 Feb 2011 19:08:43 +0100, Marc Schipperheyn <
>> m.schipperheyn at gmail.com> wrote:
>>  I have a lot of experience with Bobo Browse. The code is well maintained
>>> and performs well.
>> The last release was over a year back and personally I find the docs very
>> sparse. I also
>> think there is a lot of complexity in bob browse which is not needed for
>> simple faceting.
> It's certainly true that the release cycle is not really well structured
> although code updates are frequent and well tested.
> My problem is that javadoc is horrible. Other than that the documentation
> is on the sparse side but workable.
> The problem with simple faceting is that pretty soon simple is too simple.
>> Either way, I don't think it would be a good idea to expose the bobo
>> browse facet API directly
>> in Search. This would bind us to bobo browse for now apparent reason. If
>> we come up with with
>> a working facet API for Search we can always change the implementation
>> later or make it
>> configurable.
> Makes sense
>>  I don't have time to download and implement code examples, but if you
>>> have working examples up somewhere, I'd be happy to take a look.
>> There are code examples in SimpleFacetingTest.java and
>> RangeFacetingTest.java in this
>> package
>> https://github.com/hferentschik/hibernate-search/tree/3a9877e2bbc47a8bd6e438dbbab56d93ac9101fd/hibernate-search/src/test/java/org/hibernate/search/test/query/facet
>> If you get hold of
>> https://github.com/hferentschik/hibernate-search/tree/HSEARCH-667 you can
>> always run
>> these examples by running 'mvn clean test'
> I'll have a look.
> Cheers,
> Marc
>> --Hardy

More information about the hibernate-dev mailing list