SI
SI
discoversearch

We've detected that you're using an ad content blocking browser plug-in or feature. Ads provide a critical source of revenue to the continued operation of Silicon Investor.  We ask that you disable ad blocking while on Silicon Investor in the best interests of our community.  If you are not using an ad blocker but are still receiving this message, make sure your browser's tracking protection is set to the 'standard' level.
Pastimes : Silicon Investor, under the hood

 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext  
From: SI Bob12/16/2004 7:19:23 PM
  Read Replies (2) of 81
 
Our database server runs Windows Server 2003, Enterprise Edition.

In trying to find anything that'll let me make a virtual disk out of about a gig of memory, and determine why this machine never uses more than 4 gig of memory, I ran into this:

tek-tips.com

One of the folks there said you shouldn't use /3gb and /pae switches in boot.ini at the same time.

I use both. Always have.

Opinions?

I'd rather know for sure which one I should use or if it's okay (and ideal) to use both rather than going through trial and error since I don't like rebooting that box unless I absolutely must.

Also, I've found out a little more about full-text searching.

If I use CONTAINS() to find messages with the word "bush" in them for the current year, it takes 15 seconds to return the top 100.

If I instead use CONTAINSTABLE(), it takes 10 seconds.

If I use *just* the CONTAINSTABLE() and no joins and no other WHERE's, 10 seconds. If I do all the joins and wheres, 10 seconds. The bottleneck is not only MSSearch, it's a 50% greater bottleneck when I use CONTAINS() instead of CONTAINSTABLE().

Interestingly, when I put my simple CONTAINSTABLE() query into a stored proc, the proc ran in 9 seconds.

So, I'm going to have to do a pretty substantial rewrite of full-text search both here and on iHub. iHub's search has gotten very slow since it isn't limited to years and now has nearly 5 million messages.

Although I really have to wonder whether making "bush" a noise word and rebuilding the indexes and leaving everything else as-is might not be a better approach. Searches on nearly any other string I can think of return results instantly, whether I use CONTAINS or CONTAINSTABLE().

Changing to CONTAINSTABLE() would require a lot of rewriting because it goes into the FROM part of a query. CONTAINS(), which I currently use, goes into the WHERE.

Before I decide to make that change, I'm going to see if other things can be done to speed it along. Like storing catalogs on a memory-based virtual drive, if I can find anything that'll let me create a virtual drive out of some of this unused memory.

And I also want to try storing the catalogs on the webserver's hard drive and see if that's any faster, since it's a simple IDE setup instead of the db server's RAID5.

Edit: sql-server-performance.com says we should be using both /3gb and /pae, which we are.
Report TOU ViolationShare This Post
 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext