all groups > sql server dts > march 2007 >
You're in the

sql server dts

group:

Slowly Changing Dimension UNRELIABLE?


Slowly Changing Dimension UNRELIABLE? KenWhitesideDBA
3/14/2007 4:20:59 AM
sql server dts: Any Microsoft guys out there?

I posted this up yesterday and haven't got any response other than
others having problems too.

I'm trying to use the SCD on the Employee table for one of the bigger
companies in the US. It works fine with small data loads but when I
push the 100k employee feed through it every day, it errantly creates
historical records. Upon comparison of the records with the same
Business Key, the data seems to be exact.

Of course I can do the whole process in a stored procedure with
straight TSQL which runs 10 times faster, but I would rather use the
robust new SSIS product to keep it out of the box and easily
supportable by others following.

Supportable seems to be the problem here. The SCD seems to be a black
box. What do I have to do to trap the decision process that the SCD is
making? I can see that the tasks appears to be setup correct ( my
assumption, I'm not an BIDS expert yet ), and that the output is
definetly wrong. How do I observe the SCD's errant decision making
process??

I believe the problem lies with the Business Key field itself as the
problem is coming down the "new output" pipe which should only happen
when it does not find an existing business key ( alphanumeric 7 char
UserID ). The odd thing is that if I put a lookup above the SCD on the
same field, trying to throw the errors ( no lookup found ) directly to
an OLEDB Insert Destination, zero records fail the lookup. But then
the SCD moves a small percent of the 100k records down the "New
Output" path as if there was no pre-existing UserID. Upon comparison
after the fact, I have new historical records for a given UserID with
all data duplicated except for the EmployeeKey of course.
Re: Slowly Changing Dimension UNRELIABLE? KenWhitesideDBA
3/14/2007 7:16:29 AM
On Mar 14, 7:20 am, "KenWhitesideDBA" <kenwhiteside...@gmail.com>
[quoted text, click to view]

I think I have figure out the problem. The definition of the "Current
Record". I have some current records that are of a status of
deactivated and therefore have an ending_date populated. The SCD
appears to be ignoring these because the definition of current to the
SCD is that ending_date must be null. Now I am going to have to get
tricky and add my status_code field into the equation.
Re: Slowly Changing Dimension UNRELIABLE? Allan Mitchell
3/14/2007 6:15:17 PM
Have you seen the advanced properties for this transform? There is an
advanced property (available in the properties grid of CurrentRowWhere
which allow you to specify finer levels of granularity for identifying
the current row.

--


Allan Mitchell
http://wiki.sqlis.com | http://www.sqlis.com | http://www.sqldts.com |
http://www.konesans.com



[quoted text, click to view]
AddThis Social Bookmark Button