Process Dimensions Dynamically with SSIS

  • Hello,

    Wasn't sure if I should post here or under SSIS or Data Tools, but I'll start here. I'm setting up an SSIS package to reprocess cube dimensions dynamically using the following query:

    select DIMENSION_MASTER_NAME

    from $SYSTEM.MDSCHEMA_DIMENSIONS

    WHERE [DIMENSION_UNIQUE_NAME] <> '[Measures]'

    AND CUBE_NAME = 'Aging'

    My intention is to take the result set and put it into an object variable and then loop through the object in a ForEach loop. I'm running into an issue in the SSIS Execute SQL Task which is resulting in the following error:

    SSIS Debug Host has stopped working

    The details are:

    Problem signature:

    Problem Event Name:APPCRASH

    Application Name:DtsDebugHost.exe

    Application Version:2014.120.2000.8

    Application Timestamp:5306c843

    Fault Module Name:StackHash_c97b

    Fault Module Version:6.3.9600.17736

    Fault Module Timestamp:550f42c2

    Exception Code:c0000374

    What I have found is that the query works fine, until I try to put the query results into the object variable. I am able to put a result set from a database query into the object variable. This seems to be related to using the OLE DB Provider for Analysis Services 12.0 and putting the results into the object variable.

    Has anybody bumped into this issue? If so, please share. I've "heard tell" that this dynamic processing of dimenstions is possible, but I don't have a concrete example of how to make this work in the Execute SQL Task.

    Thanks!

  • Can I ask why you are using this DMV query and then processing each dimension, one at a time, in a foreach loop? It would be far better to use either an analysis services processing task or using dynamic xmla (built by your DMV query). That way you can take advantage of parallel processing and make a performance gain. Then again you may have your reasons.....:-)


    I'm on LinkedIn

  • Hi Eights......I'm actually getting my feet wet with this kind of job and this is a legacy cube. The database has older cubes and dimensions that no longer process and probably should be be deleted. I found this example above online and it seemed like a good solution for managing the legacy aspect of this job......at least till I know more and feel comfortable deleting.

    What I'm really hoping to accomplish is to process "just" this cube and the dimensions it uses, but making those dimensions dynamic so that if I add another I don't have to tweak the SSIS package. If there is a better way, I'm certainly open to suggestion.

  • Just process the entire cube object with an analysis services processing task. If you add any dimensions then it'll pick them up


    I'm on LinkedIn

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply