CiviCRM Community Forums (archive)

*

News:

Have a question about CiviCRM?
Get it answered quickly at the new
CiviCRM Stack Exchange Q+A site

This forum was archived on 25 November 2017. Learn more.
How to get involved.
What to do if you think you've found a bug.



  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Developer Discussion »
  • Google Summer of Code »
  • Interactive Search Project: GSoC 2015
Pages: [1]

Author Topic: Interactive Search Project: GSoC 2015  (Read 695 times)

prabh-me

  • I’m new here
  • *
  • Posts: 3
  • Karma: 0
  • Technocrat
  • CiviCRM version: CiviCRM 4.4.12
  • CMS version: Drupal 7.x
  • MySQL version: MySQL 5.7
  • PHP version: PHP 5.6.1
Interactive Search Project: GSoC 2015
February 10, 2015, 05:52:29 am
Hi

I am a student developer from India, with an avid interest in Search and Information Retrieval. I am interested in working for the Interactive Search Project for GSoC 2015.
Few things I wanted to discuss with the community:

1) Out of the four directions mentioned in the project description, I think that integrating CiviCRM's data with a search service would be the right choice with regards to scalability, effectiveness and speed. What do you guys think about it?

2) Various search services exist and choosing the correct service is a pre-requisite for the project's success.  The maturity that Solr comes with is not comparable with anything else. Even CloudSearch have now shifted their core engine from A9 to Solr. Sphinx and ElasticSearch are also packed with useful features.
With respect to CiviCRM's data, requirements and functionalities to be implemented, which search service would be the best?

Prabhjot Singh

totten

  • Administrator
  • Ask me questions
  • *****
  • Posts: 695
  • Karma: 64
Re: Interactive Search Project: GSoC 2015
February 10, 2015, 11:49:08 am
Hello, Prabhjot. Great to hear about your interest.

I think you're right that a search service -- Solr, Sphinx, ElasticSearch -- would be good for scalability and speed (and also features). The downside is deployment; hosting and configuring a search service would be a big obstacle for many non-profit organizations. (The appeal of MySQL FTS as backend is that everyone running Civi already has MySQL.)

One possible game-plan would be to develop the summer project with Solr/Sphinx/ElasticSearch as a proof-of-concept. A POC could develop a new UI, explore some technical challenges, and ultimately the value+power+feasibility of a better search -- but it might not "reach the masses." A POC could be used at some organizations (i.e. the bigger / more technically-sophisticated folks). Other contributors could then build on it (e.g. perhaps someone could reuse the UI and add a MySQL backend; or perhaps someone could provide a prepackaged Solr service).

prabh-me

  • I’m new here
  • *
  • Posts: 3
  • Karma: 0
  • Technocrat
  • CiviCRM version: CiviCRM 4.4.12
  • CMS version: Drupal 7.x
  • MySQL version: MySQL 5.7
  • PHP version: PHP 5.6.1
Re: Interactive Search Project: GSoC 2015
February 11, 2015, 01:43:49 am
Great!
I'll try to prototype both the alternatives, and share my experiences asap.

 

xavier

  • Forum Godess / God
  • I’m (like) Lobo ;)
  • *****
  • Posts: 4453
  • Karma: 161
    • Tech To The People
  • CiviCRM version: yes probably
  • CMS version: drupal
Re: Interactive Search Project: GSoC 2015
February 12, 2015, 08:30:24 am
Hi prabh,

I'd recommend you to use https://github.com/tttp/civicrm-buildkit to set up your dev environement, that's way faster than doing it by hand.

As for the search engine, it might be worthwhile to present the search interface as an api (it's already the case for the quick search used eg. on the top left corner) and use it for your queries.

Once abstracted via the api, it will probably be easier to to implement the api either using mysql fts or solr (or whatever other search engine)

X+
-Hackathon and data journalism about the European parliament 24-26 jan. Watch out the result

JohnFF

  • I post frequently
  • ***
  • Posts: 235
  • Karma: 6
  • CiviCRM version: 4.4.13
  • CMS version: Drupal 7.28
  • MySQL version: 5.5.31-1
  • PHP version: 5.3.27
Re: Interactive Search Project: GSoC 2015
February 18, 2015, 03:12:52 am
Hi prabh-me,

In Future First's dashboard, we use a "faceted search" function. This means that as you select options, other options are restricted based on the available data. There's generally a counter of the overall number of records that will be retrieved based on the options that have been selected. I will happily show you it if you like (PM me for details).

A great example of a lovely faceted search is here: https://eikes.github.io/facetedsearch/ I had it working as an extension at one point. I can probably pass on the code if you're interested, but there's not a huge amount there.

JohnFF
If you like empowering charities in a free and open way, then you're going to love Civi.

Email Amender: https://civicrm.org/extensions/email-amender
UK Phone Validator: https://civicrm.org/extensions/uk-phone-number-validator
http://civifirst.com
https://twitter.com/civifirst

prabh-me

  • I’m new here
  • *
  • Posts: 3
  • Karma: 0
  • Technocrat
  • CiviCRM version: CiviCRM 4.4.12
  • CMS version: Drupal 7.x
  • MySQL version: MySQL 5.7
  • PHP version: PHP 5.6.1
Re: Interactive Search Project: GSoC 2015
February 18, 2015, 04:41:09 am
Thank you community for all the suggestions.

I am trying to address the drawbacks of the current search mechanism and looking for a viable solution.
JohnFF, great example of faceted search. Can i explore the code?
PM'ed you

Pages: [1]
  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Developer Discussion »
  • Google Summer of Code »
  • Interactive Search Project: GSoC 2015

This forum was archived on 2017-11-26.