all groups > sql server full text search > april 2007 >
You're in the

sql server full text search

group:

Full text memory usage


Full text memory usage Tom
4/12/2007 10:44:32 PM
sql server full text search:
Hi

I work with SQL 2005 and I know how it uses RAM but I know just some basic
stuff about Full-text catalogs and since we plan to implement them in the
future I need to know a few things.

1. Can you set min and max memory for full text service like it can be set
for SQL service?
2. Does it start using RAM as it needs it until it hits maximum and then
release it only if some other process needs RAM like SQL does?
3. How much RAM could be expected for Full text sevice to use on 20GB
catalog? (just estimate)
4. On x86 windows, full text service is limited to max 3GB of RAM (with /3GB
switch in boot.ini probably). Is on x64 Windows limitation 4GB and on IA64
there is no such limitations? Can you confirm that?


Thanks
Tom

Re: Full text memory usage Hilary Cotter
4/13/2007 7:22:04 AM
answers inline.

--
Hilary Cotter

Looking for a SQL Server replication book?
http://www.nwsu.com/0974973602.html

Looking for a FAQ on Indexing Services/SQL FTS
http://www.indexserverfaq.com



[quoted text, click to view]

No.
[quoted text, click to view]

Not really, like any other windows application it can see up to 2 Gigs on a
32 bit system, on a 64 bit system it may see then entire physical memory. It
uses what it needs. Depending on the other applications running on this
server its working memory set may be paged to disk. It makes extensive use
of the file system cache.

[quoted text, click to view]

We have about 12 20 gig catalogs - memory used is 40 Mgs.

That depends on your queries mainly. The indexer runs in process with SQL
Server.
[quoted text, click to view]

That is correct on 64 bit systems applications provided they are coded for
it can see the entire physical ram. So your entire catalogs could be in ram
on systems with larger memory.
[quoted text, click to view]

Re: Full text memory usage sql411 NO[at]SPAM nospam.com
4/19/2007 5:20:01 PM
With SQL Server 2005, you typically will try to limit it to not starve the
OS. So, in an X64 environment with 12GB -- I might give 10 to SQL and allow
2 for the OS (everything else).

When you introduce full-text on this system of total 12GB, how do you
prevent FTE from starving the OS?

So, I would set 8GB for SQL and leave 4GB for the OS+FTE+everything else.
Is there nothing to guarentee that FTE doesn't over utilize that 4GB and
cause OS level latency?

I thought there might be some level of governing this by using the:
ft crawl bandwidth (max) & ft notify bandwidth (max)

sp_configure options but it doesn't seem that is what the purpose of those
are for.


Thanks,
Robert Towne
Re: Full text memory usage sql411 NO[at]SPAM nospam.com
4/19/2007 8:58:01 PM
OK, i was thinking that FTE in 2005 ran in a seperate memory space than what
is specified in SQL Server's 'max server memory'. Very helpful to know &
many thanks..

[quoted text, click to view]
Re: Full text memory usage Hilary Cotter
4/19/2007 10:58:07 PM
the full-text engine does not compete with the OS. SQL Server will complete
with other application, like sql fts. Set
sp_configure 'max server memory'

to 2 gigs less than the total memory, so fts has enough memory to operate.


"sql411@nospam.com" <sql411nospamcom@discussions.microsoft.com> wrote in
message news:0988A377-5262-4986-98CF-17BAAD4C9D32@microsoft.com...
[quoted text, click to view]

Re: Full text memory usage Tom
4/20/2007 12:00:00 AM
I thought the same as Robert.
So if FTS operates with large full-text indexes they will be cached in
memory space under SQLService?
How can I determin how much memory that SQL uses is actually used for
full-text catalog and how much for other data?
I usually use "Database pages" counter to see how much data and indexes are
cached in RAM.

Tom



"sql411@nospam.com" <sql411nospamcom@discussions.microsoft.com> wrote in
message news:4A8CC880-DB65-4DBA-8EDE-A67BB88DF9FE@microsoft.com...
[quoted text, click to view]

Re: Full text memory usage Hilary Cotter
4/20/2007 10:59:04 AM
SQL FTE doesn't use much ram, but SQL Server will apply memory pressure on
all other applications on this box. That is why it is important to cap sql
server so SQL FTE has room to operate.

I don't think ms has exposed counters to determine how much memory of the
SQL Engine SQL FTS uses (some of the indexing operations are integrated into
the engine), but the indexes are not caches in SQL Server's data cache. They
are part of the file system cache.

[quoted text, click to view]

AddThis Social Bookmark Button