Friday, February 17, 2012

dev and production server - cache issue

i have two servers, both running SSAS, my production server recently became really slow performing lookups, just in one cube. I cant seem to find the root cause. I took a backup of the production and loaded it exactly as production but on a different server. I can query the cube in development fast. Looking at profiler, it seems the one cube with performance issues isnt looking up things in cache at first, it takes one try, then queries are fast. I have read some places online about cache warming, which is a great idea, but it doesnt make sense that the same cube in my dev environment is working just fine without cache warming. Anyone have any insights?

Are there any security roles applied in production that may not be applied in dev?

There are a couple of things around security roles that could result is slightly slower performance. If you are running as a server admin you sometimes get better performance as security roles are not applied at all. And the formula engine caches cannot be shared over security roles. So if you had mulitple different secuirty roles being used in production the amount of cache re-use would be reduced.

|||no, the security roles are the same. After investigating more, I found the Aggregation Manager util that comes with the samples and ran that against dev and prod, it looks like prod has 0 for aggregation counts where dev has counts..I wonder how that can be though, why one wouldn't be working and the other would when dev was just restored from prod's backup.

Is there anything in some settings or something where the aggregations are messed up or not working correctly for some reason? Maybe memory limits or disk, or something? I'm not having much luck finding out how they could be different. Even rebuilding the aggreations on prod through BIDS didnt change the count (i tested on a few partitions). Its like the prod server doesnt recognize the aggregations for some reason
|||let me rephrase that

the aggregation counts are there, like there are 25-30 per partition, but when i view the record count distirbution per aggreagation, all my records are in "No aggregation"
|||

Just to double check, are you using MOLAP storage?

How did you do your backup and restore? Did you do a full archive and restore or did you script the structures and re-process on dev?

Are you by any chance doing just a processData on your partitions? (this will not process aggregations)

Do you have any proactive caching on prod which might cause the cache to be flushed?

|||
yes using MOLAP

After more investigating, there was no full backup. We did try doing a full deployment from dev to production last night and it didnt change anything even after a full reprocess..

we dont have proactive caching set up

still stumped on this one..
|||we did another deploy and it seems to fix the issue, just a weird anamoly
|||Strange. All I can think if is that someone might have designed additional aggregations after the solution was deployed to production.

No comments:

Post a Comment