0
Bringing Solr to Drupal<br />1<br />A General and a Library-Specific Use CaseKirály PétereXtensible Catalog<br />
Two ways of using Solr in Drupal<br />2<br />General solution: Apache Solr Search Integration and related modules: Stats, ...
Part 1 – the general solution<br />3<br />General solution: Apache Solr Search Integration and related modules: Stats, Aut...
Drupal architecture<br />4<br />Relational databasefor storage<br />Solr index for search<br />
Purposes<br />5<br />Creating a general insfrastructure which is usable in every Drupal installation<br />Core module, and...
6<br />sort<br />Facet 1<br />Facet 2<br />
7<br />List of modules page<br />sort<br />module search<br />API version<br />categories<br />
Advanced search: issues<br />8<br />
Whitehouse.gov on Drupal & Solr<br />9<br />sort<br />facets<br />
Boosting by Drupal specific properties<br />10<br />
Boosting and ignoring by document type<br />11<br />
Boosting by fields/ HTML tags<br />12<br />
More like this implementation<br />13<br />
Solrin Views integration<br />14<br />Views is a very popular module, helps creating interactive DB queries andresult page...
Part of the Views admin page<br />15<br />You can specify fields, sorting, filters, layout,<br />arguments, behaviours and...
Using Tika: file search<br />16<br />
Indexing/searching multiple sites<br />17<br />
Search in comments<br />18<br />
CCK date searching<br />19<br />Content Construction Kit: popular module to create document and field types. CCK date is a...
statistics<br />20<br />impressive numbers – that’s why welove Solr…<br />
Statistics of facet usage<br />21<br />
autocomplete<br />22<br />
Future plans<br />23<br />Crawling with Nutch<br />Geospatial search<br />eDismax (Solr 1.5)<br />Drupal 7<br />API change...
People behind these modules<br />24<br />Robert Douglass(DE) http://drupal.org/user/5449<br />Alejandro Garza (MX) http://...
Links<br />25<br />apachesolr http://drupal.org/project/apachesolr (this is the best starting point)<br />content recommen...
Part 2 – Library specific solution<br />26<br />General solution: Apache Solr Search Integration and related modules: Stat...
About eXtensible Catalog<br />27<br />a project creating an open source next generation library ‘discovery interface’ and ...
Architecture<br />28<br />Drupal CMS<br />MARC Normalization<br />DCNormalization<br />XC DrupalToolkit<br />Transformatio...
Purposes of XC Drupal Toolkit<br />29<br />integrate library data into a popular content management system<br />customizab...
Search results<br />30<br />bibliographical data<br />cover images<br />highlighted terms<br />facets<br />availability in...
Customized interface (Kyushu University)<br />31<br />
Similar documents<br />32<br />
XML attribute handling<br />33<br />subject=„History” and subject_OCLC=„History”subject_OCLC=„History”subject=„History” an...
Mapping schema fields to Solr types<br />34<br />
Setup a facet<br />35<br />Aggregating values ofdifferent fields into onefacet<br />specifySolr type<br />custom PHP code ...
Custom PHP code for displaying title<br />36<br />
Getting records into Drupal: OAI harvesting<br />37<br />List of scheduled harvests<br />Harvest is running<br />
Data flow between components<br />38<br />OAI-PMHprovider<br />Drupal<br />batch delete/insert documents<br />creating nod...
Creating a ‘more like this’ parameter set<br />39<br />Saving parameters for ‘More like this’ functionality<br />
Creating highlighter<br />40<br />wrapper around the highlighter’s parameters<br />
Setting up field and date facet properties<br />41<br />Date facet properties<br />Field facet properties<br />
Putting facets together: ‘facet group’<br />42<br />General properties<br />List of facets, and their type<br />
Reordering facets<br />43<br />Just drag and drop<br />You haven’t  saved changes!<br />
Using facet term list in search form<br />44<br />dropdown fullfilled withlanguagefacet terms<br />dropdown definition<br />
Adding widgets to UI: navigation bar<br />45<br />definition of navigation bar<br />navigation bar in action<br />
Links<br />46<br />Project page http://eXtensibleCatalog.org<br />XC Drupal Toolkit http://drupal.org/project/xc<br />Meta...
Upcoming SlideShare
Loading in...5
×

Solr in Drupal

5,029

Published on

Presentation held at Apache Lucene EuroCon 2010 (http://lucene-eurocon.org/)

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,029
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
63
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide
  • We can see lots of search parameters: status, priority, component etc.
  • To modify relevancy values, you can map field boosting values to different Drupal features: whether a node is promoted to the front page, or is sticky, the number of comments, recently commented nodes etc.
  • You can boost or diminish the ranking of individual content types, or exclude content types from being indexed altogether.
  • Dries Buytaert is the creator of Drupal, now the head of Acquia.com
  • Here you can see how many searches from a music site are being filtered by genre or instrumentation.
  • Transcript of "Solr in Drupal"

    1. 1. Bringing Solr to Drupal<br />1<br />A General and a Library-Specific Use CaseKirály PétereXtensible Catalog<br />
    2. 2. Two ways of using Solr in Drupal<br />2<br />General solution: Apache Solr Search Integration and related modules: Stats, Autocomplete, Multisite, Ajax, Biblio, Attachments, Übercart (e-commerce integration), Views, Multilingual, Geospatial and many othersFits for the overall needs, uses predefined fields<br />Library specific solution: eXtensible Catalog modulesFits for library needs, uses dynamic fields<br />
    3. 3. Part 1 – the general solution<br />3<br />General solution: Apache Solr Search Integration and related modules: Stats, Autocomplete, Multisite, Ajax, Biblio, Attachments, Übercart (e-commerce integration), Views, Multilingual, Geospatial and many othersFits for the overall needs, uses predefined fields<br />Library specific solution: eXtensible Catalog modulesFits for library needs, uses dynamic fields<br />This part of the presentation is based on the works and previous presentations of<br />Robert Douglass.<br />
    4. 4. Drupal architecture<br />4<br />Relational databasefor storage<br />Solr index for search<br />
    5. 5. Purposes<br />5<br />Creating a general insfrastructure which is usable in every Drupal installation<br />Core module, and additional module for covering specific Solr functionalities (statistics, autocomplete etc.)<br />Replace the original (and still default) MySQL-based search feature<br />
    6. 6. 6<br />sort<br />Facet 1<br />Facet 2<br />
    7. 7. 7<br />List of modules page<br />sort<br />module search<br />API version<br />categories<br />
    8. 8. Advanced search: issues<br />8<br />
    9. 9. Whitehouse.gov on Drupal & Solr<br />9<br />sort<br />facets<br />
    10. 10. Boosting by Drupal specific properties<br />10<br />
    11. 11. Boosting and ignoring by document type<br />11<br />
    12. 12. Boosting by fields/ HTML tags<br />12<br />
    13. 13. More like this implementation<br />13<br />
    14. 14. Solrin Views integration<br />14<br />Views is a very popular module, helps creating interactive DB queries andresult pages. Now it can handle Apache Solr as data source.<br />
    15. 15. Part of the Views admin page<br />15<br />You can specify fields, sorting, filters, layout,<br />arguments, behaviours and more<br />
    16. 16. Using Tika: file search<br />16<br />
    17. 17. Indexing/searching multiple sites<br />17<br />
    18. 18. Search in comments<br />18<br />
    19. 19. CCK date searching<br />19<br />Content Construction Kit: popular module to create document and field types. CCK date is a special field type handling dates.<br />
    20. 20. statistics<br />20<br />impressive numbers – that’s why welove Solr…<br />
    21. 21. Statistics of facet usage<br />21<br />
    22. 22. autocomplete<br />22<br />
    23. 23. Future plans<br />23<br />Crawling with Nutch<br />Geospatial search<br />eDismax (Solr 1.5)<br />Drupal 7<br />API changes<br />Improving documentation<br />
    24. 24. People behind these modules<br />24<br />Robert Douglass(DE) http://drupal.org/user/5449<br />Alejandro Garza (MX) http://drupal.org/user/153120<br />Peter Wolanin (US) http://drupal.org/user/49851<br />James McKinney (CA) http://drupal.org/user/472460<br />Scott Reynolds (US) http://drupal.org/user/60009<br />Mike O'Connor (US) http://drupal.org/user/104525<br />Markus Kalkbrenner (DE) http://drupal.org/user/124705<br />and others…<br />
    25. 25. Links<br />25<br />apachesolr http://drupal.org/project/apachesolr (this is the best starting point)<br />content recommendation patchhttp://drupal.org/node/372767<br />views integration http://drupal.org/project/apachesolr_views, http://acquia.com/node/911667<br />file search http://drupal.org/project/apachesolr_attachments, http://acquia.com/node/1129446<br />date facet for CCK fieldhttp://drupal.org/node/558160<br />statisticshttp://drupal.org/project/apachesolr_stats<br />multisitehttp://drupal.org/project/apachesolr_multisitesearch<br />autocompletehttp://drupal.org/project/apachesolr_autocomplete<br />
    26. 26. Part 2 – Library specific solution<br />26<br />General solution: Apache Solr Search Integration and related modules: Stats, Autocomplete, Multisite, Ajax, Biblio, Attachments, Übercart (e-commerce integration), Views, Multilingual, Geospatial and many othersFits for the overall needs, uses predefined fields<br />Library specific solution: eXtensible Catalog modulesFits for library needs, uses dynamic fields<br />
    27. 27. About eXtensible Catalog<br />27<br />a project creating an open source next generation library ‘discovery interface’ and an FRBR-based metadata platform<br />started in 2007<br />driven by new theories of library science, cultural anthropology and the practice of web 2.0, library 2.0<br />Universities of Rochester, Notre Dame, Cornell, North Carolina at Charlotte, Rochester Institute of Technology and CARLI consortium<br />
    28. 28. Architecture<br />28<br />Drupal CMS<br />MARC Normalization<br />DCNormalization<br />XC DrupalToolkit<br />Transformation<br />Aggregation <br />XC Metadata Services Toolkit<br />circulation data<br />XC NCIPToolkit<br />XC OAI Toolkit<br />Integrated Library System<br />Repository<br />
    29. 29. Purposes of XC Drupal Toolkit<br />29<br />integrate library data into a popular content management system<br />customizable functionalities<br />customizable interface(s)<br />internationalization, localization<br />5000+ custom modules, 20+ library specific modules<br />wide range on mashup options<br />all features are available through user interfaces<br />
    30. 30. Search results<br />30<br />bibliographical data<br />cover images<br />highlighted terms<br />facets<br />availability information<br />
    31. 31. Customized interface (Kyushu University)<br />31<br />
    32. 32. Similar documents<br />32<br />
    33. 33. XML attribute handling<br />33<br />subject=„History” and subject_OCLC=„History”subject_OCLC=„History”subject=„History” and subject_type=„OCLC”none<br /><subject type="OCLC">History</subject><br />could be indexed as…<br />
    34. 34. Mapping schema fields to Solr types<br />34<br />
    35. 35. Setup a facet<br />35<br />Aggregating values ofdifferent fields into onefacet<br />specifySolr type<br />custom PHP code to modify field values(conditions)<br />
    36. 36. Custom PHP code for displaying title<br />36<br />
    37. 37. Getting records into Drupal: OAI harvesting<br />37<br />List of scheduled harvests<br />Harvest is running<br />
    38. 38. Data flow between components<br />38<br />OAI-PMHprovider<br />Drupal<br />batch delete/insert documents<br />creating nodes<br />MySQL<br />Solr<br />
    39. 39. Creating a ‘more like this’ parameter set<br />39<br />Saving parameters for ‘More like this’ functionality<br />
    40. 40. Creating highlighter<br />40<br />wrapper around the highlighter’s parameters<br />
    41. 41. Setting up field and date facet properties<br />41<br />Date facet properties<br />Field facet properties<br />
    42. 42. Putting facets together: ‘facet group’<br />42<br />General properties<br />List of facets, and their type<br />
    43. 43. Reordering facets<br />43<br />Just drag and drop<br />You haven’t saved changes!<br />
    44. 44. Using facet term list in search form<br />44<br />dropdown fullfilled withlanguagefacet terms<br />dropdown definition<br />
    45. 45. Adding widgets to UI: navigation bar<br />45<br />definition of navigation bar<br />navigation bar in action<br />
    46. 46. Links<br />46<br />Project page http://eXtensibleCatalog.org<br />XC Drupal Toolkit http://drupal.org/project/xc<br />Metadata Services Toolkit http://code.google.com/p/xcmetadataservicestoolkit<br />OAI Toolkit http://code.google.com/p/xcoaitoolkit<br />NCIP Toolkit http://code.google.com/p/xcnciptoolkit<br />Developers:<br />Mlen-Too Wesley(GH) http://drupal.org/user/318924<br />Király Péter (H) http://drupal.org/user/352587, http://twitter.com/kiru<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×