Click here to monitor SSC
SQLServerCentral is supported by Redgate
Log in  ::  Register  ::  Not logged in
Home       Members    Calendar    Who's On

Add to briefcase

help me in improving my server performance Expand / Collapse
Posted Sunday, January 25, 2009 12:06 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Wednesday, March 19, 2014 11:39 AM
Points: 3, Visits: 49

Hi evryone,

i need your graat help by suggesting the solution to my problem. Im using my server for ETL process. we are expecting 30 - 35% increase in datavolume by the next month.

our ETL cycle starts from 10.30 and ends between 4.30 and 5.30, sla time is 6.30 (should not cross that). but wht worrying me is increase in data volume my increase this ETL load and report time. How can i improve my server performance.

we have implemented horizontal partioning of some facts and aggregates using partitioned views. performing insertions into underlying tables than inserting into views. using No lack table hint in select queries, updating statistics daily nad reindexing weekly

server :hp prolient 64 bit
sql server 2005 sp2
memory config :AWE enabled, total 16gb and available :1.12gb
virtual : 23.38 Gb available 8.55 Gb
pagefile 7.99 Gb
pagefile : c:\pagefile.sys

Database : divided onto files and filegroups mdf and 6ndf files.
all these files are stored on M:drive {san}

Review this partioning, indexes and server config and our ETL stratergy and suggest me the ebneficial measures

Post #643114
Posted Sunday, January 25, 2009 6:13 AM



Group: General Forum Members
Last Login: Tuesday, February 2, 2016 9:21 AM
Points: 2,006, Visits: 6,087
AWE should not be enabled on 64bit systems.

Does the server have 16GB of memory total? If there is only 1.2GB available you are choking the OS, that can seriously impact things that the ETL process can require.

Do you have the "Lock Pages in Memory" setting on for the service account that you are using?

You mention the virtual memory, you should not be paging at all, so this should be irrelevant, if you are seeing paging it is because you either have only 1.2GB for the OS, or it's paging out SQL processes in order to run OS processes.

Make a start with those things and if you get no improvements then you'll need to provide schemas, scripts and data examples.

Shamless self promotion - read my blog
Post #643148
Posted Sunday, January 25, 2009 11:11 AM



Group: General Forum Members
Last Login: Today @ 9:51 AM
Points: 44,011, Visits: 41,417
Couple things...

Nolock is not a good thing to add everywhere. Are you aware of the problems it may cause and do you feel that the risks of bad data are acceptable?
What's SQL's max memory set to? From the sound of things, it should perhaps be lowered.
Are the log files also on M? If so, why?
What's the RAID level of the SAN drives and are they dedicated?

Is it 64 bit SQL? Enterprise edition? Standard edition? If enterprise, have you considered partitioned tables, rather than partitioned views?

As for advice, profile the ETL process, find the slowest portion and then look at optimising that. Looking at the entire thing in one go is not a good idea. You need to identify the pain points and fix those, then find the next most problematic point and fix that, etc, etc

Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass

Post #643203
Posted Tuesday, January 27, 2009 3:31 PM
Hall of Fame

Hall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of Fame

Group: General Forum Members
Last Login: Today @ 11:21 AM
Points: 3,446, Visits: 5,423
In addition to the other suggestions, make sure that:

1) Join columns are indexed

2) Indexes have the proper freespace and are reorganized / rebuilt as often as needed to keep them functioning well

3) Queries do not do functions on table columns unless absolutely necessary, esp. on indexed columns. For example, instead of:
WHERE YEAR(datecolumn) = 2008 AND MONTH(columnname) = 2
WHERE datecolumn >= '20080201' AND datecolumn < '20080301'

4) Tempdb has at least one data file per processor core

Since you have only one SAN drive, you cannot be using RAID 1 for logs and RAID 5/10 for data. This will affect your performance as well.

SQL DBA,SQL Server MVP('07, '08, '09)

"If in the future, you should cry a tear, cry one for them [the murder victims]. If in the future, you should say a prayer, say one for them. And if in the future, you should light a candle, light one for them." James Blackburn, in closing argument in the "Fatal Vision" murders trial
Post #644559
Posted Tuesday, January 27, 2009 8:17 PM



Group: General Forum Members
Last Login: Today @ 12:37 PM
Points: 39,689, Visits: 36,828
Stop using SSIS for ETL. Use BULK INSERT and some good T-SQL programming, instead.

--Jeff Moden
"RBAR is pronounced "ree-bar" and is a "Modenism" for "Row-By-Agonizing-Row".

First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column."

(play on words) "Just because you CAN do something in T-SQL, doesn't mean you SHOULDN'T." --22 Aug 2013

Favorite Quotes:
"Has anyone ever told you that a query you have written runs too fast?" - Dwain Camps - 6 Mar 2014

Helpful Links:
How to post code problems
How to post performance problems
Post #644647
Posted Friday, January 30, 2009 8:32 AM


Group: General Forum Members
Last Login: Wednesday, September 29, 2010 5:23 AM
Points: 194, Visits: 2,357
Don't use Table or View as your data access method when loading or transferring data. This apparently uses a cursor behind the scenes, and as a result kills your ETL. Or at least means it runs forever. Rather than use table or view, on say vwMyETLSource you are actually better off using SQL Command for data access method with SELECT * FROM vwMyETLSource.

Goes against the grain I know
Post #647012
« Prev Topic | Next Topic »

Add to briefcase

Permissions Expand / Collapse