locked
Deploying cube dimensional structure changes to production RRS feed

  • Question

  • Hello,

    I have a SSAS cube on Production server. Recently, there was a change request from business to add two new attributes to the production cube. I have made changes to the dimension and want to deploy the change to Production cube.

    What I need to know is the how do I deploy only the changes so that there is minimal user impact? What processing should be chosen?There is no new dimensional row or fact row being added when I deploy the cube. Just two new dimensional attribute to one dimension.

    Any pointers and useful links is very much appreciated.

    Thanks!

    Sunday, April 5, 2015 12:23 AM

Answers

  • Thanks! Based on the link it seems Process Add is an option that I should go with. How do I generate the XLMA to add the attributes to the cube dimension?

    You still need to deploy you attribute changes using deployment wizard etc.

    If you need to script a Process Add then right click the dimension and select process.

    at the top of the box the is a script button and select it.

    In the XMLA where the type indent is change this to ProcessAdd

    example is like this

    <Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
      <Parallel>
        <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400">
          <Object>
            <DatabaseID>AdventureWorksDW2012Multidimensional-EE</DatabaseID>
            <DimensionID>Dim Department Group 1</DimensionID>
          </Object>
          <Type>ProcessAdd</Type>
          <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
        </Process>
      </Parallel>
    </Batch>


    Sunday, April 5, 2015 8:58 PM

All replies

  • Hi ,

    Look for below link;

    https://msdn.microsoft.com/en-us/library/ms174774.aspx?f=255&MSPPError=-2147217396

    thanks


    Please Mark This As Answer or vote for Helpful Post if this helps you to solve your question/problem. http://techequation.com

    Sunday, April 5, 2015 4:40 PM
  • Thanks! Based on the link it seems Process Add is an option that I should go with. How do I generate the XLMA to add the attributes to the cube dimension?

    Sunday, April 5, 2015 7:00 PM
  • Thanks! Based on the link it seems Process Add is an option that I should go with. How do I generate the XLMA to add the attributes to the cube dimension?

    You still need to deploy you attribute changes using deployment wizard etc.

    If you need to script a Process Add then right click the dimension and select process.

    at the top of the box the is a script button and select it.

    In the XMLA where the type indent is change this to ProcessAdd

    example is like this

    <Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
      <Parallel>
        <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400">
          <Object>
            <DatabaseID>AdventureWorksDW2012Multidimensional-EE</DatabaseID>
            <DimensionID>Dim Department Group 1</DimensionID>
          </Object>
          <Type>ProcessAdd</Type>
          <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
        </Process>
      </Parallel>
    </Batch>


    Sunday, April 5, 2015 8:58 PM
  • Nope.

    "adds new members" - members are rows, not the attributes.

    When you change the model, dimension and all facts using this dimension will become unprocessed.

    So you need to:

    1. Deploy model changes - cube become inaccessible at this moment.

    2. Process full new dimension.

    3. Process full affected facts.

    You can do it on secondary server (if you have one) and re-point end users to it after all is done or update primary from it.

    Monday, April 6, 2015 4:50 AM