Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Best Search Architechure for a conditional search

Posted on 2013-01-14
1
Medium Priority
?
286 Views
Last Modified: 2013-02-28
Hi - I'm exploring some options for a new search tool I'm building and would appreciate some advise on how to best architect it.

Here's the scenario:
- I've got a music search app with 30,000 searchable songs
- My existing search uses Solr (Lucene) to perform an indexed Keywords search against the stored keywords associated with each song.  

Currently, users can enter search terms into a Keywords box, which searches the indexed songs keywords field.  For example, a user could search: "happy, fun, upbeat".  This works great, but I want to add another layer to the search that allows users to enter a band name to search.  Where if the user searches "Pink Floyd" or "The Rolling Stones", it will recognize those as a band names, then grab the associated Band Description for said band, then pass it to the Solr search engine.

I'm using MySQL and am going to be importing a "band database" with around 50,000 band records, to use as my source data.  I'll call that table BANDS, and give it the following 2 fields:
- BandName
- BandDescription

From the front-end user search, I want to check the users search term against BANDS.BandName.
If a match is found; get BANDS.BandDescription and pass that to my Solr indexed search
If a match is not found; just search the user search Keywords in the Solr indexed search

------------------------------------

Please let me know if that makes sense.  Speed is imperative to the success of my search, so I'm wondering if this 2-stop-search approach is the correct way to do this.  I look forward to learning....
0
Comment
Question by:Xbradders
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 24

Accepted Solution

by:
johanntagle earned 1800 total points
ID: 38781253
Usually the pattern is to search all keywords by default, then have a customized search if user wants to search by specific fields.  I haven't used solr but for sphinx you can choose to specify specific indexes to search, or all.  Suggest you stick to doing all the searches on solr.
0

Featured Post

Quick Cloud Training

Looking for some quick training on the cloud in 2 hours or less? Check out these how-to guides in AWS, Linux, OpenStack, Azure, and more!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It is possible to export the data of a SQL Table in SSMS and generate INSERT statements. It's neatly tucked away in the generate scripts option of a database.
When trying to connect from SSMS v17.x to a SQL Server Integration Services 2016 instance or previous version, you get the error “Connecting to the Integration Services service on the computer failed with the following error: 'The specified service …
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Via a live example, show how to extract information from SQL Server on Database, Connection and Server properties

704 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question