Gossamer Forum
Home : Products : Gossamer Links : Discussions :

Search Problem!

Quote Reply
Search Problem!
Hello,

I just had a client submit a new url this morning. Their description for their site includes the word "classifieds" in it.

They then searched with the single word "classifieds" and this returns no results. I just tried it myself.

I have also changed the search_substring to YES, and this made no difference. I am indexing using MySQL (if this makes any difference).

Please let me know how to address this,

Thanks again!

Here is the description in full:

Direct-GO.com is the Simple & Free web site for international classifieds/Business directory

Last edited by:

sooke: Apr 5, 2002, 2:45 PM
Quote Reply
Re: [sooke] Search Problem! In reply to
In Reply To:
Here is the description in full:

Direct-GO.com is the Simple & Free web site for international classifieds/Business directory

Maybe it's seeing the string "classifieds/Business" as a word because there aren't any spaces. Try searching for:

classifieds*

Sean

Last edited by:

SeanP: Apr 5, 2002, 3:09 PM
Quote Reply
Re: [SeanP] Search Problem! In reply to
Thanks Sean, but neither classfieds* nor classifieds/Business work!

This is very strange indeed!

Unsure

Just as a test I also searched for "books" which I know there plenty of sites... and this ONLY returns the categories with Books in it, not the sites!



HELP!

Last edited by:

sooke: Apr 5, 2002, 3:15 PM
Quote Reply
Re: [sooke] Search Problem! In reply to
Hmm... I'm sure it has something to do with the indexing scheme. I haven't tried the MYSQL indexing, so I'm not sure. I use INTERNAL and it seems to give me the best results. You might try putting spaces between the "/" (ex: classifieds / Business).

Sean
Quote Reply
Re: [SeanP] Search Problem! In reply to
Thanks Sean... it seems my search is completely not working!

I need staff intervention here perhaps....
Quote Reply
Re: [sooke] Search Problem! In reply to
I had ben using MYSQL indexing and getting very few, if any results. When I switched it to INTERNAL (and rebuilt the index) whalla! all my search results showd up just fine. Try switching and re-indexing.

oh, and whn you use INTERNAL, reindexing takes a lot longer. But worth it.

good luck!

Last edited by:

Evoir: Apr 5, 2002, 3:24 PM
Quote Reply
Re: [Evoir] Search Problem! In reply to
Thank Evoir... I do not have shell/telnet access, so switching is a problem, especially now that I have 40,000+ links.

I wonder why MySQL does not work?

Are there any other disadvatages (performace and server resource wise) by using internal indexing?

Do you know off hand what the shell command is to do this ( I may be able to get my host to do this for me again). I am guessing it is: perl nph-index.cgi --change-driver=INTERNAL --reindex
Could someone confirm this?


Thanks

Last edited by:

sooke: Apr 5, 2002, 4:16 PM
Quote Reply
Re: [sooke] Search Problem! In reply to
In Reply To:
Do you know off hand what the shell command is to do this ( I may be able to get my host to do this for me again). I am guessing it is: perl nph-index.cgi --change-driver=INTERNAL --reindex
Could someone confirm this?

That's the correct command line. Wink

The manual has a table that displays the pros and cons of the different indexing schemes. It's definitely worth looking at, depending on what you're doing.

Sean
Quote Reply
Re: [SeanP] Search Problem! In reply to
I have asked my host to run the script for me to convert my indexes to Internal. I am pretty keen on getting the search part working again! I dont think I will be able to change indexes again (my host is not keen on running these commands each time) so I am hoping the Internal is the best choice for my situation.

I have read the section of the manual which defines the indexing schemes a few times now.

It seems to me that the Internal mehtod offers the best "features". I am not sure how it compares performance wise to MySQL though - which is what my database is.
Quote Reply
Re: [sooke] Search Problem! In reply to
I don't think you need shell access, this is changeable through the web based admin. Can't remember where. Databases->Links and then look at the bottom.
Quote Reply
Re: [Evoir] Search Problem! In reply to
Yeah, it can be, but only up to a certain sized database aparently. I get warning errors saying database is too big, and to try another method.

On a similar topic:

The part in the manual that says "A full reindex is required after manual chnages to the database and after changing weight tables" under Internatl->Disadvantages

Does a full re-index require the shell access perl command? or can this be done from the admin panel?
Quote Reply
Re: [sooke] Search Problem! In reply to
The command line will change the scheme and reindex the database (--reindex). This will take a while to run when using INTERNAL. The reason you get more features with INTERNAL is because the MYSQL indexing method is built into MySQL server and is limited in features. It is constantly being developed, but just isn't fully there. The INTERNAL scheme is GT's developed indexing method, and is specific to their products. It creates word list tables and scoring tables. When you do a search, theses tables are queried to find the best results by word matches and scores. This is where "weighting" your fields come into play. You can set weights for each field (Title, URL, Description, etc.). If you give a field, lets say a weight of 10, every time a match is found in that field it gets 10 points. When using "score" as the sorting method, you get the highest scored matches first. You obviously get more features from the INTERNAL method because it was designed for Links SQL. The speed of the INTERNAL indexing scheme is going to depend on the hardware being used. The bigger and faster the server(s) the better. The MYSQL is going to be faster, but may not produce great results. I hope some of my ramblings make sense. Smile

Sean
Quote Reply
Re: [SeanP] Search Problem! In reply to
Yes, your comments made perfect sense! Thanks Sean.

It really does sound like the Internal scheme is the way to go. I particularly like the idea of weighting the columns... it sounds like this could yield the best results.

I just have one big problem - no shell or telnet access on my host... and they won't run the shell commands for me without it being a major deal and hours upon hours of waiting (yes, i'd love to change hosts again!).

I tried using cgitelnet.pl but that doesnt work on my host either.

So, I wonder if there is a way I can change my index from MySQL to Internal, without telnet/shell access, knowing that LSQL wont let me do it from the admin panel due to the size of my databases?
Quote Reply
Re: [sooke] Search Problem! In reply to
I'm not sure of a way to change the indexing scheme without doing it from the command line if you have a large database and the web console won't let you. If you have to get your hosting service to run it for you, it might be better to have them just run (perl nph-index.cgi --change-driver=INTERNAL) without the --reindex. That way it will be a lot quicker for them, and they may not complain as much (maybe Laugh). Then, you can click "Rebuild Search" from the Database section of the web console to do the reindex. Keep in mind that this will run for a while, and may even cause your browser to timeout. If your browser times out, just give it a while because it is still running in the background.

Sean
Quote Reply
Re: [SeanP] Search Problem! In reply to
Thanks Sean, you have been a great help.

One more question for you, once the database is re-indexed, would there be any reason to have to re-index it again? say after importing more links from another source?

I am thinking of backup up the database, deleting, starting again, set the index to Internal, then reloading my backup.... buy I am going to wait on doing this, in case this would require a re-index from shell anyways.

IanSmile
Quote Reply
Re: [sooke] Search Problem! In reply to
If links are added and/or edited inside the program, you don't have to reindex. The only time you should have to run a reindex, is if you change links from an external source (ex: importing links, making changes to the links using MySQLMan, etc.).

I'm glad I could be of assistance. Smile

Sean