PDA

View Full Version : Search function improvement?



TheAnimal
12-08-2006, 07:09 AM
I noticed that the search function ignores terms shorter than 4 letters. But quite a lot of hardware has three letter names.

As an example search for "DVX 100" and this is what you will get: "The following words are either very common, too long, or too short and were not included in your search : dvx, 100" :crybaby:

Same with "cs3", "kmr 81" and so on and so forth. :crybaby:

Now I wonder: is it possible to change the setup of this forum so that at least 3-letter search terms are accepted?

mikkowilson
12-08-2006, 07:39 AM
Unfortunatly the server couldn't handle shorter searches.

Right now it has to compare all words 4 letters and longer in the database (which is huge by the way) when you run a search. There are many of these words.

If the search threshold was reduced to say 3 letter words, the load on the server per search would grow massivly. "the" "and" "dvx" "red" "you" etc... are all VERY common words and the amount of data for the server to process would just be too much. It would slow down and probabaly crash eventually.

As an example, I have highighted all words three letters or shorter in this post in red, just to illustrate how much less the server has to handle thanks to this policy. Though there are a lot of these short words, very few, if any, would be helpfull in describing this post for a search.

Common words are also kept out of the search beacuse they again place un-necesarry load on the server. Beeing more specific will always yeild better results.
Ever try searching for "e" on google? I'm sure that the desired answer will be somewhere in the results, but obviously it would be impossibly hard to wade through so many search results.


As a result we just have to be carefull when picking our search terms. After all searching for "dvx" (for example) would return thousands of results with probably very few pertaining to the desired topic.
Most good searches can be described with more than 4 letter words.



The searching rules are also worth keeping in mind when adding to the information database on this site (posting messages). It's a good idea to make sure that key words pertinant to the content are longer then 3 letters.

For example in a thread about a microphone, it's better to say "Radio Microphone" than "Radio Mic". That way someone can find your post when looking for advice on a new microphone.

Same goes the other way too, you can help keep out less important results with shorter words: In a thread about a tripod, where someone once taped a microphone reciver to their tripod (which is prety useless information about microphones), say "I taped a mic to my tripod" and it'll be ignored in the search.

Search & post smarter, not harder.



- Mikko ... too much red.

Anhar Miah
12-08-2006, 07:48 AM
the trick is using "key words", avoid making sentences, so I've seen people googling things like:

"I am a realy fat bastard how the hell can I get slim really quickly?"

would be better if you looked for:

"Weight Loss Diet Programs"


Anhar

MiniMan13
12-08-2006, 08:00 AM
While searching the database is CPU intensive, a forum this large should have a dedicated MYsql box to run that.

Erik Olson
12-08-2006, 08:09 AM
I would vote for a shorter refresh period on the searches. One minute is a real killer. Thirty seconds would be a vast improvement.

e

mikkowilson
12-08-2006, 08:18 AM
Dynamicly load balanced searching would be cool.

For example
A 1 minute delay between 4-letter word searches, but only 35 secconds for 5 letters. & letter words would drop you down to 25sec / search. Wousl still be less load than we have now, but smarter (more specific [less CPU intensive]) searches would be rewarded with less time throttling.

Of course the "New Posts" button gets hit a lot. And that's another search.
But really, who needs to see new posts more often then once a minute?! It can stay at 60sec as far as I'm concerned.

- Mikko

TheAnimal
12-08-2006, 08:41 AM
It is also good practice to exclude words from searches by using a stop word list instead of limiting the number of characters. Most of the words you highlighted in your post would be on the stop word list, e.g. "the" "be", "was", etc.

mikkowilson
12-08-2006, 08:47 AM
Yeah, but to stop a word, you still have to process it. It will lower results, but not CPU load so much.

- Mikko

MiniMan13
12-08-2006, 10:07 AM
just get a faster cpu on the Mysql box, It is so much easier

CallaghanFilms
12-08-2006, 10:11 AM
stop kveching.

MiniMan13
12-08-2006, 10:18 AM
I would if i knew what that was :-d

rook
12-09-2006, 12:50 AM
The search is good if I know exactly what I'm looking for.

otherwise it is completly useless to me.

And sometimes I want to punch it, which doesn't even make sense.

-rook