SQL Clone
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 


"Attribute Key Cannot Be Found When Processing" when it does exist in the DW


"Attribute Key Cannot Be Found When Processing" when it does exist in the DW

Author
Message
bob.lang
bob.lang
SSC Journeyman
SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)

Group: General Forum Members
Points: 76 Visits: 23
Hello,

We have a cube that exists on a Dev, Test, and Prod environment. For all three environments, they are refreshed nightly using the "Process Full" option. We have the same code base on all three environments and our DW that is used to populate the cubes is in sync across all three environments.

In the past couple of weeks, we have started to get the following error on our Dev and Test environments. The clinician that is referenced is always either this clinician or one or 2 other clinicians.

Errors in the OLAP storage engine: The attribute key cannot be found when processing:

Table: 'DW_dimClinician', Column: 'LastNameFirst_Version', Value: 'Duck, Daffy - 1669788907 - 1';

Table: 'DW_dimClinician', Column: 'NPI', Value: '1669788907'; Table: 'DW_dimClinician', Column: 'ETLEffectiveTo', Value: '6/1/2013 2:22:55 AM'.

The attribute is 'Last Name First Version'.



We have confirmed that the attribute does exist in the warehouse and it does not contain any null values. The attribute in question has not changed in the warehouse in a couple of years.
When the error occurs, we will process just the dimension and once it completes successfully, we will re-process the cube using the Process Full option and it will process successfully.
Yesterday, if failed again. We did not reprocess anything. Last night during the normal refresh, the load did the Process Full on the cube and it successfully processed the cube.
My understanding of the Process Full option was that the cube would automatically process the dimensions first, then process the measures. Due to the inconsistently, It feels like it is trying to process some of the measures prior to the dimensions. Luckily it has not hit our production environment yet. But, I am trying to understand the issue so that I can ensure it doesn't hit that environment.
Are we interpreting the error message correctly?
Thanks,
Bob L.


Sue_H
Sue_H
SSC Guru
SSC Guru (83K reputation)SSC Guru (83K reputation)SSC Guru (83K reputation)SSC Guru (83K reputation)SSC Guru (83K reputation)SSC Guru (83K reputation)SSC Guru (83K reputation)SSC Guru (83K reputation)

Group: General Forum Members
Points: 83077 Visits: 16795
bob.lang - Monday, February 12, 2018 1:09 PM
Hello,

We have a cube that exists on a Dev, Test, and Prod environment. For all three environments, they are refreshed nightly using the "Process Full" option. We have the same code base on all three environments and our DW that is used to populate the cubes is in sync across all three environments.

In the past couple of weeks, we have started to get the following error on our Dev and Test environments. The clinician that is referenced is always either this clinician or one or 2 other clinicians.

Errors in the OLAP storage engine: The attribute key cannot be found when processing:

Table: 'DW_dimClinician', Column: 'LastNameFirst_Version', Value: 'Duck, Daffy - 1669788907 - 1';

Table: 'DW_dimClinician', Column: 'NPI', Value: '1669788907'; Table: 'DW_dimClinician', Column: 'ETLEffectiveTo', Value: '6/1/2013 2:22:55 AM'.

The attribute is 'Last Name First Version'.



We have confirmed that the attribute does exist in the warehouse and it does not contain any null values. The attribute in question has not changed in the warehouse in a couple of years.
When the error occurs, we will process just the dimension and once it completes successfully, we will re-process the cube using the Process Full option and it will process successfully.
Yesterday, if failed again. We did not reprocess anything. Last night during the normal refresh, the load did the Process Full on the cube and it successfully processed the cube.
My understanding of the Process Full option was that the cube would automatically process the dimensions first, then process the measures. Due to the inconsistently, It feels like it is trying to process some of the measures prior to the dimensions. Luckily it has not hit our production environment yet. But, I am trying to understand the issue so that I can ensure it doesn't hit that environment.
Are we interpreting the error message correctly?
Thanks,
Bob L.



I'm think that's pretty much the gist of the error - the measure group processed before the related dimensions.
As to the order on Process Full, I've read different things. Your experience is similar as what is being said in this post - except he is saying that it's only processing measure groups:
How cube process full work

I don't know why they can't clearly document some of this. This is one of the blogs that comes close - check the section on ProcessUpdate:
Different Kinds of SSAS Processing in simple words…..

Sue



Martin Schoombee
Martin Schoombee
SSCoach
SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)

Group: General Forum Members
Points: 17771 Visits: 4775
According to this Microsoft document, processing a cube will only process "unprocessed dimensions", and this is why you're getting the error. If you want to avoid it, you should either process your dimensions explicitly first, or process the SSAS database which in turn will process all objects contained within it.



bob.lang
bob.lang
SSC Journeyman
SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)

Group: General Forum Members
Points: 76 Visits: 23
Thanks for the reply. I wasn't clear in my original post. When we are processing our cubes, we are using the Process Full option on the SSAS database itself. Since we are doing a full process on the database, we are confused why it is attempting to process measure groups prior to dimensions being processed.
Martin Schoombee
Martin Schoombee
SSCoach
SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)

Group: General Forum Members
Points: 17771 Visits: 4775
Thanks for the clarification. I've personally never seen it happen that the measure groups are processed before dimensions...it's just not the way Analysis Services is wired. Not discrediting your experience here, just think that there might be something else at play...could it be that your fact and/or dimension table is changing (i.e. records are being inserted/updated) while the cube processing is in progress?



bob.lang
bob.lang
SSC Journeyman
SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)SSC Journeyman (76 reputation)

Group: General Forum Members
Points: 76 Visits: 23

That is a good thought about the facts and dimensions possibly changing but we can rule that out. In our DW load process, which is the only time the facts and dimensions are modified, the very last step is to run the full process on the SSAS database.

I agree with you that something else must be in play, but we just can't figure it out. The error messages getting returned from the system are not accurately reflecting the issue (in our minds).

Thanks


Martin Schoombee
Martin Schoombee
SSCoach
SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)SSCoach (17K reputation)

Group: General Forum Members
Points: 17771 Visits: 4775
bob.lang - Wednesday, February 14, 2018 2:59 PM

That is a good thought about the facts and dimensions possibly changing but we can rule that out. In our DW load process, which is the only time the facts and dimensions are modified, the very last step is to run the full process on the SSAS database.

I agree with you that something else must be in play, but we just can't figure it out. The error messages getting returned from the system are not accurately reflecting the issue (in our minds).

Thanks


Yeah...the only other things I can think of is a rogue connection string (i.e. reading from one environment for dimensions and another for facts) which is also unlikely if you are processing the entire database, or overwritten processing options.

I'd be interested to know what happens if you split the processing out, explicitly processing dimensions fully before processing the cube. If that eliminates the problem, it might be the way to go.




Go


Permissions

You can't post new topics.
You can't post topic replies.
You can't post new polls.
You can't post replies to polls.
You can't edit your own topics.
You can't delete your own topics.
You can't edit other topics.
You can't delete other topics.
You can't edit your own posts.
You can't edit other posts.
You can't delete your own posts.
You can't delete other posts.
You can't post events.
You can't edit your own events.
You can't edit other events.
You can't delete your own events.
You can't delete other events.
You can't send private messages.
You can't send emails.
You can read topics.
You can't vote in polls.
You can't upload attachments.
You can download attachments.
You can't post HTML code.
You can't edit HTML code.
You can't post IFCode.
You can't post JavaScript.
You can post emoticons.
You can't post or upload images.

Select a forum









































































































































































SQLServerCentral


Search