On 17/03/14 23:53, Antonia Horincar wrote:
I have renamed the conversation, as I have decided to look at another project
that has drawn my attention, which is COMDEV-108 (Adding Apache Solr to
Bloodhound).
COMDEV-109 would have been interesting, but I’m not sure I would be able to
create a thorough proposal by Friday (one that would cover all the issues that
might arise when implementing a feature to make BH deployment easier).
When searching information about Solr, I came across this[1] Python client for
Solr which I think would be very useful to this project. Basically it creates a
Solr instance, it indexes the documents provided, and then has methods that can
be used for retrieving those documents. So the project would have the following
requirements:
* adding Solrpy to Bloodhound
* adding callbacks to searchable objects in Bloodhound, so that they are
indexed in Apache Solr
* delegating searching to Solr (whenever someone does a search request, return
the results provided by Solr, rather than the results provided by Woosh)
In my opinion, using Solrpy would be better than building the feature upon the
FullTextSearchPlugin[2], as it is an open-source library with thorough
documentation.
Do you think that my approach is suitable for this project?
Thanks,
Antonia
[1] https://code.google.com/p/solrpy/
[2] http://trac-hacks.org/wiki/FullTextSearchPlugin
Hi Antonia,
Yeah, I think you have the beginnings of the right approach there. This
is another of the projects that do not necessarily add any completely
new functionality but instead provides an alternative (hopefully
enhanced) search backend for Bloodhound. I would guess that using the
FullTextSearchPlugin as a base would not be suitable as there is the
existing bloodhound search functionality to integrate with. However,
that plugin does make use of the alternative
https://github.com/tow/sunburnt library for working with Solr. It looks
to me like both libraries would probably provide all the features you
need so it is either a matter of judgement and taste: are the projects
active and mature, are they easy to configure and are they easy to work
with?
I'm certainly not going to dictate the choice - either could be right in
your opinion - but you might want to take a little space in your
application to see if you can justify a choice.
The documentation for each might also be helpful:
https://pythonhosted.org/solrpy/
http://opensource.timetric.com/sunburnt/index.html
One good thing is that these libraries should reduce pretty much all of
the knowledge required of the java language but you will certainly want
to have a play with installing Solr. Given the java requirement for
installation, we would not usually expect this to be a standard install
but hopefully appropriate setups could benefit from an alternative
enhanced search.
And for quick reference for everyone else, COMDEV-108 is
https://issues.apache.org/bloodhound/ticket/488
Cheers,
Gary