dbTalk Databases Forums  

Re: Strange performance setting Execution Location=3

microsoft.public.sqlserver.olap microsoft.public.sqlserver.olap


Discuss Re: Strange performance setting Execution Location=3 in the microsoft.public.sqlserver.olap forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
David Hwang
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-06-2004 , 05:05 PM






Thanks for the response. That Performance Guide was quite helpful for
understanding many aspects of Analysis Server. Unfortunately, I
wasn't able to use it to improve the performance of our system. We
are constantly creating new partitions (with new data) and merging
them in. Essentially doing the incremental cube updates ourselves.
So in our case, we need to worry about three times: process time,
merge time, and query time. It seems like anything I do to speed up
one of those will slow down another one of those times. Using
aggregations is great for query times, but processing and merging of
the new partitions became prohibitively slow. Any suggestions for
changes that might increase performance across the board?

OnlyForPostingToNewsgroups (AT) hotmail (DOT) com (Chris Webb) wrote in message news:<48d9285e.0403180153.5c0f512e (AT) posting (DOT) google.com>...
Quote:
I think the point to make here is that remoting a query doesn't
necessarily mean improved performance - although the server might have
a faster CPU, this isn't the only factor at work here. What was the
server CPU doing when you first ran the query, without trying to
remote it? Did you do your tests with a cold cache on the client and
server?

In any case, it sounds like you need to explore other other avenues to
improve query performance. Have you tried Usage-Based Optimisation to
see if you have the aggregations needed for this query? Are there any
calculated members in this query? Have you read the Analysis Services
Performance Guide?
http://www.microsoft.com/technet/pro.../ansvcspg.mspx

Regards,

Chris

davidhwang (AT) usa (DOT) com (David Hwang) wrote in message news:<d9f37fcd.0403171253.3dc405e6 (AT) posting (DOT) google.com>...
In an attempt to speed up a Pivot Table view, I tried changing the
Execution Location (also Default Isolation Mode=1) to the server since
it seemed like the client cpu was pegging while updating. After
making this change, the client cpu usage is almost zero and the server
cpu shows heavy usage. However, this makes the query take almost
twice as long even though the server has a much faster cpu. Has
anyone else seen similar behavior? Is the same work really being done
on both sides?

David

Reply With Quote
  #2  
Old   
Denny Lee
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-06-2004 , 05:24 PM






Hi David,

Out of curiosity, why are you merging the partitions after processing them?
Typically, with larger systems, I leave the partitions in place and process
the partitions directly which will result in faster processing performance
(e.g. if partition by day, only process one day of data) and faster query
performance (i.e. more threads are utilized across multiple partitions which
helps query performance - this is especially true with distinct count
queries). Saying this, to improve a pivot table performance:
1. This is a pretty tricky thing to do and setting the execution location to
the server does not make it faster (from experience, it is often slower as
you have seen as well).

2. One of the ways to improve the performance of queries (outside the above
statements) is to re-organize your dimensions. i.e. instead of having 3 or
4 separate dimensions, if its possible, place the dimensions into different
levels of one dimensions. This will help speed up performance quite a bit
for Excel.

These are somethings to help - but with some additional info I may be able
to assist better.

HTH!
Denny




"David Hwang" <davidhwang (AT) usa (DOT) com> wrote

Quote:
Thanks for the response. That Performance Guide was quite helpful for
understanding many aspects of Analysis Server. Unfortunately, I
wasn't able to use it to improve the performance of our system. We
are constantly creating new partitions (with new data) and merging
them in. Essentially doing the incremental cube updates ourselves.
So in our case, we need to worry about three times: process time,
merge time, and query time. It seems like anything I do to speed up
one of those will slow down another one of those times. Using
aggregations is great for query times, but processing and merging of
the new partitions became prohibitively slow. Any suggestions for
changes that might increase performance across the board?

OnlyForPostingToNewsgroups (AT) hotmail (DOT) com (Chris Webb) wrote in message
news:<48d9285e.0403180153.5c0f512e (AT) posting (DOT) google.com>...
I think the point to make here is that remoting a query doesn't
necessarily mean improved performance - although the server might have
a faster CPU, this isn't the only factor at work here. What was the
server CPU doing when you first ran the query, without trying to
remote it? Did you do your tests with a cold cache on the client and
server?

In any case, it sounds like you need to explore other other avenues to
improve query performance. Have you tried Usage-Based Optimisation to
see if you have the aggregations needed for this query? Are there any
calculated members in this query? Have you read the Analysis Services
Performance Guide?

http://www.microsoft.com/technet/pro.../ansvcspg.mspx

Regards,

Chris

davidhwang (AT) usa (DOT) com (David Hwang) wrote in message
news:<d9f37fcd.0403171253.3dc405e6 (AT) posting (DOT) google.com>...
In an attempt to speed up a Pivot Table view, I tried changing the
Execution Location (also Default Isolation Mode=1) to the server since
it seemed like the client cpu was pegging while updating. After
making this change, the client cpu usage is almost zero and the server
cpu shows heavy usage. However, this makes the query take almost
twice as long even though the server has a much faster cpu. Has
anyone else seen similar behavior? Is the same work really being done
on both sides?

David



Reply With Quote
  #3  
Old   
Chris Webb
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-07-2004 , 08:16 AM



I agree with Denny - why are you creating and merging partitions so often? You'll have to give us a more detailed explanation of your system if we're going to offer any more advice. We'll also need to know about the queries you're running and any calculated members on the cube

One point about aggregations: yes, they will slow down processing and merging, but you should find that one or two well-chosen (and often small) aggregations can make a big impact on query performance while only increasing process and merge times a little

Chri


----- David Hwang wrote: ----

Thanks for the response. That Performance Guide was quite helpful fo
understanding many aspects of Analysis Server. Unfortunately,
wasn't able to use it to improve the performance of our system. W
are constantly creating new partitions (with new data) and mergin
them in. Essentially doing the incremental cube updates ourselves.
So in our case, we need to worry about three times: process time
merge time, and query time. It seems like anything I do to speed u
one of those will slow down another one of those times. Usin
aggregations is great for query times, but processing and merging o
the new partitions became prohibitively slow. Any suggestions fo
changes that might increase performance across the board

OnlyForPostingToNewsgroups (AT) hotmail (DOT) com (Chris Webb) wrote in message news:<48d9285e.0403180153.5c0f512e (AT) posting (DOT) google.com>..
Quote:
I think the point to make here is that remoting a query doesn'
necessarily mean improved performance - although the server might hav
a faster CPU, this isn't the only factor at work here. What was th
server CPU doing when you first ran the query, without trying t
remote it? Did you do your tests with a cold cache on the client an
server
In any case, it sounds like you need to explore other other avenues t
improve query performance. Have you tried Usage-Based Optimisation t
see if you have the aggregations needed for this query? Are there an
calculated members in this query? Have you read the Analysis Service
Performance Guide
http://www.microsoft.com/technet/pro...n/ansvcspg.msp
Regards
Chri
davidhwang (AT) usa (DOT) com (David Hwang) wrote in message news:<d9f37fcd.0403171253.3dc405e6 (AT) posting (DOT) google.com>..
In an attempt to speed up a Pivot Table view, I tried changing th
Execution Location (also Default Isolation Mode=1) to the server sinc
it seemed like the client cpu was pegging while updating. Afte
making this change, the client cpu usage is almost zero and the serve
cpu shows heavy usage. However, this makes the query take almos
twice as long even though the server has a much faster cpu. Ha
anyone else seen similar behavior? Is the same work really being don
on both sides
Davi


Reply With Quote
  #4  
Old   
David Hwang
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-07-2004 , 01:51 PM



We are simulating a realtime system and are constantly creating new
temporary partitions (for incoming data) and merging them into the
main cube. This happens probably about twice a minute. After a few
hours, the number of partitions would become quite large, and since
the partitions are created based only on the time of day when the data
comes in, Analysis Server would have to touch all partitions to
satisfy a query.

Also, the dimension structure is pretty much defined by business
requirements and we've reduced the complexity as much as possible.
Not sure what else we can do here.

"Denny Lee" <dennyglee (AT) hotmail (DOT) com> wrote

Quote:
Hi David,

Out of curiosity, why are you merging the partitions after processing them?
Typically, with larger systems, I leave the partitions in place and process
the partitions directly which will result in faster processing performance
(e.g. if partition by day, only process one day of data) and faster query
performance (i.e. more threads are utilized across multiple partitions which
helps query performance - this is especially true with distinct count
queries). Saying this, to improve a pivot table performance:
1. This is a pretty tricky thing to do and setting the execution location to
the server does not make it faster (from experience, it is often slower as
you have seen as well).

2. One of the ways to improve the performance of queries (outside the above
statements) is to re-organize your dimensions. i.e. instead of having 3 or
4 separate dimensions, if its possible, place the dimensions into different
levels of one dimensions. This will help speed up performance quite a bit
for Excel.

These are somethings to help - but with some additional info I may be able
to assist better.

HTH!
Denny




"David Hwang" <davidhwang (AT) usa (DOT) com> wrote in message
news:d9f37fcd.0404061405.2aac1a90 (AT) posting (DOT) google.com...
Thanks for the response. That Performance Guide was quite helpful for
understanding many aspects of Analysis Server. Unfortunately, I
wasn't able to use it to improve the performance of our system. We
are constantly creating new partitions (with new data) and merging
them in. Essentially doing the incremental cube updates ourselves.
So in our case, we need to worry about three times: process time,
merge time, and query time. It seems like anything I do to speed up
one of those will slow down another one of those times. Using
aggregations is great for query times, but processing and merging of
the new partitions became prohibitively slow. Any suggestions for
changes that might increase performance across the board?

OnlyForPostingToNewsgroups (AT) hotmail (DOT) com (Chris Webb) wrote in message
news:<48d9285e.0403180153.5c0f512e (AT) posting (DOT) google.com>...
I think the point to make here is that remoting a query doesn't
necessarily mean improved performance - although the server might have
a faster CPU, this isn't the only factor at work here. What was the
server CPU doing when you first ran the query, without trying to
remote it? Did you do your tests with a cold cache on the client and
server?

In any case, it sounds like you need to explore other other avenues to
improve query performance. Have you tried Usage-Based Optimisation to
see if you have the aggregations needed for this query? Are there any
calculated members in this query? Have you read the Analysis Services
Performance Guide?

http://www.microsoft.com/technet/pro.../ansvcspg.mspx

Regards,

Chris

davidhwang (AT) usa (DOT) com (David Hwang) wrote in message
news:<d9f37fcd.0403171253.3dc405e6 (AT) posting (DOT) google.com>...
In an attempt to speed up a Pivot Table view, I tried changing the
Execution Location (also Default Isolation Mode=1) to the server since
it seemed like the client cpu was pegging while updating. After
making this change, the client cpu usage is almost zero and the server
cpu shows heavy usage. However, this makes the query take almost
twice as long even though the server has a much faster cpu. Has
anyone else seen similar behavior? Is the same work really being done
on both sides?

David

Reply With Quote
  #5  
Old   
Deepak Puri
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-08-2004 , 01:11 AM



Why aren't you using incremental update of the cube, rather than
creating and merging temporary partions? With incremental updatate, the
server creates and merges incremental partitions automatically, and this
runs fast.

With regard to dimension design, ensure that dimension joins are
optimized away in the cube schema where possible. This can result in
much faster cube processing.

The other option, if even incremental update can't keep up. is to use a
Real-Time ROLAP partition (if relational data is in SQL Server 2000), in
which case the partition is automatically updated when new fact records
are added.


- Deepak

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

Reply With Quote
  #6  
Old   
David Hwang
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-08-2004 , 07:15 PM



When using DSO, isn't an incremental update just creating temporary
partitions and merging them yourself? There's not an incremental
option under DSO.processTypes. The way I understand it, when Analysis
Manager offers you the incremental process option, it's actually just
using DSO to create a temporary partition and merge it in.

For dimensions, we followed the suggestions given in the performance
guide (link in the first post of this thread) and managed to speed up
processing quite a bit. I don't think there's much else we can do
except try to convince people that they don't really need some of
those dimensions.

We tried using ROLAP, but the queries were extremely slow.

Deepak Puri <deepak_puri (AT) progressive (DOT) com> wrote

Quote:
Why aren't you using incremental update of the cube, rather than
creating and merging temporary partions? With incremental updatate, the
server creates and merges incremental partitions automatically, and this
runs fast.

With regard to dimension design, ensure that dimension joins are
optimized away in the cube schema where possible. This can result in
much faster cube processing.

The other option, if even incremental update can't keep up. is to use a
Real-Time ROLAP partition (if relational data is in SQL Server 2000), in
which case the partition is automatically updated when new fact records
are added.


- Deepak

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

Reply With Quote
  #7  
Old   
Deepak Puri
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-08-2004 , 09:40 PM



I didn't realize that you're using DSO - in which case, there's no
direct incremental update option.

Have you examined the MDX queries generated for the pivot table views,
and tried to optimize them - do they involve cross-joining of multiple
dimensions?

Also, I'm wondering what the partition processing frequency (twice a
minute) is determined by - is it volume of data, real-time display
requirement - since that is a factor.


- Deepak

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

Reply With Quote
  #8  
Old   
David Hwang
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-10-2004 , 01:49 PM



The partition processing frequency is determined by the real-time
display requirement. We're basically processing and adding the data
as fast as we can as it comes in.

How do you optimize MDX queries that are generated by pivot tables in
Excel? Is there a way to give Excel hints on how to construct those
queries?

Deepak Puri <deepak_puri (AT) progressive (DOT) com> wrote

Quote:
I didn't realize that you're using DSO - in which case, there's no
direct incremental update option.

Have you examined the MDX queries generated for the pivot table views,
and tried to optimize them - do they involve cross-joining of multiple
dimensions?

Also, I'm wondering what the partition processing frequency (twice a
minute) is determined by - is it volume of data, real-time display
requirement - since that is a factor.


- Deepak

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

Reply With Quote
  #9  
Old   
Deepak Puri
 
Posts: n/a

Default Re: Strange performance setting Execution Location=3 - 04-11-2004 , 11:48 PM



With OWC Pivot Tables, you can customize the MDX query (with some
limitations), but I'm unaware of any options with Excel. Of course,
there are many Excel add-ins that would also allow MDX customization (if
that's an option).


- Deepak

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.