Hi Prashant!
Welcome to DynamicsUsers.net [<:o)]
Oh, oh … this is a big mistake! The Transaction Log of the NAV database MUST be stored exclusively on a dedicated physical drive - means nothng else is stored there! And especially not the tempdb! The TLog is used sequentially, thus when having it on a dedicated volumen - alone - the read/write head(s) of the disk(s) would virtually always be in the optimal position, the mechanical (slow!) work of the spindles is reduced to a minimum. As all transactions are depnding on the physical writes to the TLog, it is most important to have it as fast as possible!
tempdb is randomly accessed. Hence, if tempdb (or anything else) is stored together with the TLog, the spindles have to perform plenty of mechanical work, thus slowing down the system.
tempdb should also be placed on a dedicated physical drive, RAID 1 or 0 if possible.
Usually NAV is doing this itself, even though if the “Clustered” property is not set. In 4.00 before SP1 there was a bug, not creating a Clustered Index for the PK, but this should have been fixed ages ago! Every table needs a Clustered Index (the right one, of course)!
What does this mean? How should this work? NAV is not a “component” of SQL Server, the Clients - and NAS - are just using it.
This is crap. The Clustered Index has nothing to do if you need SIFT or not. This depends on several other issues, e.g. the number of records in the source table, the way of querying the sums, etc… There are options to replace SIFT by “Indexes with INCLUDED columns” on the source table (see my BLOG), but this is something one has to analyze thoroughly!
What you could try is this:
SIFT Optimization: Reduce the number of buckets in all “Ledger Entry” tables. Without a detailed analysis a rule of thumb could be: “Only the one-before-the-last-one remains”. Example: If you have a SIFT Index with 10 buckets (0 - 9) only number 8 should be enabled, all others could be disabled. If you encounter problems, then add bucket number 7, etc…
Dimensions: The major problem when posting documents is usually the Dimensions. You could speed up things by changing the Clustered Index of T357 “Document Dimension”:
Key: Table ID,Document Type,Document No.,Line No.,Dimension Code
Set property “SQL Index” to: Document No.,Document Type,Line No.,Table ID,Dimension Code
Set “Clustered” to TRUE
You could proceed similar with “Posted Doc. Dimension”, “Ledger Entry Dimension”, etc.
Yes - The more RAM the better.
Probably Yes - depends on the current “Processor Queue Length”. QuadCores are not really recommended for a SQL Server, better use 2 Dual Cores instead.
I doubt that MS will fix this …
Best regards,
Jörg