.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links


Posted By:      Posted Date: October 08, 2010    Points: 0   Category :Sql Server
Hi! Is it really necessary to use DBCC DROPCLEANBUFFERS and DBCC FREEPROCCACHE when using SET STATISTICS IO ON and SET STATISTICS TIME ON for better results in assessing the performance of a query? I want to optimize some stored procedures using these tools. Any suggestions?

View Complete Post

More Related Resource Links

Basic Instincts: Increase LINQ Query Performance


Jared Parsons demonstrates a technique to achieve maximum performance from LINQ queries on large sets of data in order to create a responsive user interface.

Jared Parsons

MSDN Magazine August 2008

Query Performance & Overall Design - SSAS MDX WCF

Hi All, We have a Cube which is to be queried by the Online system , using WCF service. Peroformance of the queries running on the Cube is not really very good , as we have to calculate various percentile (which are all calculated members) on the cube, this howver works well within limits of 5-6 secs for small sample size. But this goes beyond the threshold of 30 secs when the record counts increases. What we have is our SSAS Cubes , and we have WCF Service querying the Cube using ADOMD.NET. This may not be one of the best way to achieve this requirement , but we are kind of completed with development and it may not be feasible to work on another approach, what we are looking for is optimize this design and make it work with in expected time limits of 5-8 secs. Kindly let me know, if i am not clear or if you need any more info to suggest something ! Thanks a lot for your help !   Kindly

Oracle Linked serve Query performance in 2000 vs 2008 R2 64 Bit

Hi everyone We have started to migrate one of our reporting systems from Sql 2000 to Sql 2008 R2.  One of the steps has been to test the perforance of certain Oracle linked server queries between each server.  We are finding on average 3 fold better perforance stats (in terms of query completion time) on the old server.  This should obviously not be the case.  The new server has signifantly more CPU/Memory/IO resources to play with, and it is 64 bit (not to mention its new!).  Here's what I got so far: Old server: SQL 2000 on W2000 both fully patched.  Old Dell Dual core with 3 GB of Ram running on two soft IDE Mirrored drives (yes I know... it sucks).  It connecting via the MS OLE DB provider for Oracle (9i client) New server: ESX VMware Server with 2 CPU's assigned, 8 GB of ram connected to large HP SAN.  CPU, ram and IO's have all been ruled out as the problem.  We've tried varying network cards with different results so we havent ruled that out yet.  Its connecting via the Oracle provider for OLE DB (11G 64 bit client) The linked server is an Oracle 9i fully patched server.  All three are on the same network backbone. Running a simple select * query on both servers returns the same number of rows (~76 000) .  It takes ~1:20 on the new server and ~0:20 on the old server. In looking at the wait stati

Full text performance of a certain query

I am doing a full text query on a very simple table and when I include the search term "y5v" in the conditions it slows the query down like 8 to 1. The table is defined as: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO CREATE TABLE [dbo].[tblTextSrchData]( [intItemId] [int] NOT NULL, [srchTxt] [varchar](max) NOT NULL, CONSTRAINT [PK_tblTextSrchData] PRIMARY KEY CLUSTERED ( [intItemId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] Here is the query: SELECT II.intItemID, KEY_TBL.[RANK] as Score FROM tblItems II INNER JOIN CONTAINSTABLE(dbo.tblTextSrchData,srchTxt, '("capacitor" OR FORMSOF(INFLECTIONAL, "capacitor") OR "capacitor*") AND ("active" OR FORMSOF(INFLECTIONAL, "active") OR "active*") AND ("y5v" OR FORMSOF(INFLECTIONAL, "y5v") OR "y5v*")') KEY_TBL ON KEY_TBL.[KEY] = II.intItemID If I take any of the additional search terms out it improves performance.  If I remove the yv5 search term the results are returned in less than a second. What seems to be the problem is for some reason when I add yv5 it starts doing these sorts after the full text matching.  These sorts take most of the time.  I'm not sure

Stack Dump generated on the db and SQL tipped over DBCC CHECKDB came out clean

We have Profile db for sharepoint 2010 and the SQL tipped over just before which it generated the below dump. The DBCC CHECKDB on the database came out clean. The SQL Server is SQL 2008 SP1 CU5 and the memory on the server is 32GB with max. for SQL Server being 26 GB.  What could have caused this? There is nothing in the error log prior to this dump. name                                minimum     maximum     config_value run_value ----------------------------------- ----------- ----------- ------------ ----------- access check cache bucket count     0           65536       0            0 access check cache quota            0           2147483647  0            0 Ad Hoc Distributed Queries          0           1           0

Should DR testing include DBCC CheckDB

We have EMC storage and use SRDFa to replicate production data to another location.  In the coming weeks we'll be doing some DR testing that will involve interrupting replication, then mounting the 'DR' storage on our staging servers.  I'll attach the databases and testing will begin.  I'm wondering if standard practice should include running DBCC CheckDB against the 'recovered' databases before turning them over to the users. [We're running SQL 2005 SP2 Enterprise (64-bit) on a 6 node Active-Passive cluster.  The OS is Win 2003.]

MDX query using linked server - performance question

Hi, I'm having a strange performance behavior. When I’m running a mdx query on management studio, it runs for 10 minutes (its mainly calc members on a large cube) When I run the same query via linked server and openquery, it runs for 20 minutes. Is the SQL from some reason does a parsing or running the query twice? The server is sql2008 UP1 on 64bit. and the "allow in process" is checked. its the default in sql2008 Thanks in advance, Yoav  

query w.r.t to SharePoint 2010 Performance Planning & Extranet Topology

  1.      Which extranet topology to go with in case of exposing Intranet to Remote Employees / Partners ?   My understanding:   There are 3 extranet topologies : Edge Firewall , Back to Back , Split back to back   If Scenario is : a)      Only Employees needs to access Intranet from Home ,we can go for Edge Firewall b)      If partners & Employees , both needs to access Intranet ( it will have some partner sites ) , then we can go for Back to Back OR Split back to back .   Questions: ·         Is Understanding correct ? ·         Is there any factor which can help in making a decision between Back to Back Or Split back to back ?   2.      As part of sizing , I read that we should capture following information -          What should be maximum acceptable CPU utilization in production servers ? ( Example : 70%) -          What will be the concurrent number of users accessing portal during peak hour of a day ? ( Example 1000 users from total of 18000 users ) -          How many request per second are done to portal

Dbcc inputbuffer

Hi, Can anyone assist in troubleshooting one issue at my end. Using dbcc inputbuffer (spid) will give the current command that the process is executing. My question is how exactly we can find the exact query that the user has submitted to the sql server. The reason i was looking at it was because of some heavy blockings on the server, i used sp_who2 and found an spid which is causing huge blocking on the server. But when i used dbcc inputbuffer it is showing as an Insert command (Might be an inserts into the tempDB) and it is not the exact Insert command because the application where user's use to connect has no insert function on it. Is there any way to find the exact t-sql that the user has issued. Regards, Sandhya

Very slow performance with a query involving JOINS

I am experiencing extremely slow performance on a particular SQL query using SQL compact.  This same query completes in less than one second on my regular SQL server.  With SQL compact, I am actually not even sure if the query ever completes.  As I type this I am testing it from SQL management studio, and it's up to 17 minutes and 40 seconds still executing so far. Since I am not experiencing this on most of my other queries, I have little doubt the slowness is due to the volume of data in these tables, coupled with the fact that I am doing the joins.  I made sure that foreign key constraints are in place for the columns that the joins are based on.  From what I've read, this also ensures that appropriate indexes are created, although I am starting to wonder about that. This is the query: SELECT TOP (200) t.BusinessEntityID, t.BusinessName, t.IsTowTruck, t.IsHospital, t.TowTruckLastUsed, t.BusinessLocked, cn.Address1, cn.City, cn.State, cn.PostalCode, cnp.PhoneNumber as TopPhoneNo, GetDate() as LastUpdatedDate, GetDate() as CreatedDate FROM tblBusinessEntity t LEFT JOIN cnBusinessEntityLocation cn ON cn.cnID in (SELECT TOP (1) cnID FROM cnBusinessEntityLocation where cnBusinessEntityLocation.Active = 1 AND cnBusinessEntityLocation.BusinessEntityID = t.BusinessEntityID

MDX query performance is slow for complex logic implementation in Calculated Members.

We have implemented a calculated members which involves multiple calculated members  called in a nested e.q. Cal1 calls Cal2 and Cal2 calls  Cal3  and Cal3 calls Cal4 .  And when browing Cal1 through Excel it takes around 30 mins for getting result from a Partition having row count around 5 million. Follwing are the information on the scenario I am having: We are having partitioning in the cube. one partition contains around 4-6 million records Processers on Query Server: 4 quad core RAM on the Query Server: 64 GB Calculated members having simple calculation logics are giving results in no time. There is a Calculated members which calls 6 intermediate calculated in nested way and with small Data Set like 5-6 k rows it is running fine.   Any help will be much appreciated.   Regards, Sandeep


    Do I have to run the DBCC CHECKDB('DB Name', REPAIR_REBUILD) in single user mode, have no users using the DB?  Not sure. If I have no users using the DB, can I still run without putting the server in single user mode?      Thanks for help   

How to calculate a SQL Server performance of a query based upon table schema, table size, and availa

Hi What is the best way to calculate (without actual access to a SQL Server) the processing speed of a query (self-inner-join) based upon table schema, table size, and hardware (CPU, RAM, Drives)? ThanksThanks Jeff in Seattle

Database temporary corruption - DBCC CHECKDB error

I've run into a very strange and frustrating recurring error. I have a Single instance SQL Server 2005 DBMS on Win2K3 Server x86.  The problem occurs with a *single* database on the system, the other databases are unaffected.  We primarily access this database for editing through an Access 2007 data project, though it's accessed (select only) from many places using odbc or oledb. Basically some sort of corruption (or apparent corruption) occurs after a server update and reboot (usually unrelated to the DB software).  After that, the database is fine sometimes, other times it is fine until we try to access it via the ADP.  At that point it becomes inaccesssible by the ADP, though it can still be accessed through all other methods.  Running DBCC CHECKDB (databasename) returns: Msg 211, Level 23, State 51, Line 1 Possible schema corruption. Run DBCC CHECKCATALOG. Running DBCC CHECKCATALOG (databasename) returns no errors. Restarting the database service (from inside SSMS typically) will fix it *eventually* after a few restarts.  I can find no rhyme or reason to the apparent corruption.  I'll be glad to look and post any other log entries that might be relevant.  I should note that the database was originally created way back in SQL Server 7, though it's got no real customizations, triggers, and very few constraints on it.  It's

DBCC CHECKDB Blocking Itself SQL 2008 MSCRM

Hello I've got a nightly job that runs DBCC CHECKDB WITH TABLERESULTS for all databases, using sp_msforeachdb, and then saves the results into a table, tidies them up, and then disappears off. On my test MSCRM database, the DBCC CHECKDB command is blocking itself. The only way to resolve this self-blocking seems to be to restart SQL. sp_who2 won't execute, but sp_who does. DBCC INPUTBUFFER tells me that it's the stored procedure I'm executing causing the blocking.  A bit more searching into sys.dm_os_waiting_tasks and and sys.dm_exec_connections suggests that this piece of code is causing the problem: DECLARE @BlobEater VARBINARY(8000)   SELECT @BlobEater = CheckIndex (ROWSET_COLUMN_FACT_BLOB)  FROM { IRowset 0xE093909D00000000 }  GROUP BY ROWSET_COLUMN_FACT_KEY  >> WITH ORDER BY    ROWSET_COLUMN_FACT_KEY,    ROWSET_COLUMN_SLOT_ID,    ROWSET_COLUMN_COMBINED_ID,    ROWSET_COLUMN_FACT_BLOB  OPTION (ORDER GROUP)  with a wait_type of LCK_M_IX the resource type is objectlock lockPartition=0 objid=34 subresource=FULL dbid=2 id=lock8defbd80 mode=SIX associatedObjectId=34 Trying to rollback the transaction doesn't help: it just sits in a rollback sort of a state. Trying to stop SQL doesn't work too well: going into Task Manager on the Server and killing the sqlserver.exe pr

Query Performance

In My View I Have 3 CTE And 3 SubQueris ....It's Taking 5 sec To Load For The First Time And After That 2 sec To Load.View Have 10365 Records.Plz Suggest Me How Can I Make That View To Work Speedy.

DBCC physical_only can be done online?

DBCC physical_only can be done online? Is that a good practice to do this before you do your backups?
ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend