Solved

Best Search Architechure for a conditional search

Posted on 2013-01-14
1
261 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
1 Comment
 
LVL 24

Accepted Solution

by:
johanntagle earned 450 total points
Comment Utility
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

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Suggested Solutions

If you have heard of RFC822 date formats, they can be quite a challenge in SQL Server. RFC822 is an Internet standard format for email message headers, including all dates within those headers. The RFC822 protocols are available in detail at:   ht…
Ever wondered why sometimes your SQL Server is slow or unresponsive with connections spiking up but by the time you go in, all is well? The following article will show you how to install and configure a SQL job that will send you email alerts includ…
Via a live example, show how to setup several different housekeeping processes for a SQL Server.
Viewers will learn how the fundamental information of how to create a table.

762 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

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now