﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>SQLServerCentral / SQL Server 2005 / Business Intelligence  / We are processing cubes Two methods using SSIS script Task. Which one is better. / Latest Posts</title><generator>InstantForum.NET v2.9.0</generator><description>SQLServerCentral</description><link>http://www.sqlservercentral.com/Forums/</link><webMaster>notifications@sqlservercentral.com</webMaster><lastBuildDate>Mon, 20 May 2013 11:59:53 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: We are processing cubes Two methods using SSIS script Task. Which one is better.</title><link>http://www.sqlservercentral.com/Forums/Topic1379172-147-1.aspx</link><description>Wouldn't you already know which was faster?I do not know which is Better, as that could have much to do with your environment.</description><pubDate>Wed, 31 Oct 2012 10:49:24 GMT</pubDate><dc:creator>herladygeekedness</dc:creator></item><item><title>We are processing cubes Two methods using SSIS script Task. Which one is better.</title><link>http://www.sqlservercentral.com/Forums/Topic1379172-147-1.aspx</link><description>Hi All,We are processing cubes two methods using script task.we are following below two methods.Method 1: Method 1 is cubes are processing All in One time onlyMethod 2: Method 2 is cubes are processing one after one cube.Which one is better. and which one faster below two methods. Please let me knowMethod 1: sXMLA = sXMLA + "&amp;lt;Batch ProcessAffectedObjects=^true^ xmlns=^http://schemas.microsoft.com/analysisservices/2003/engine^&amp;gt;"                sXMLA = sXMLA + "  &amp;lt;Parallel&amp;gt;"                sXMLA = sXMLA + "    &amp;lt;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^&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "      &amp;lt;Object&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "        &amp;lt;DatabaseID&amp;gt;" &amp; sDatabaseID &amp; "&amp;lt;/DatabaseID&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "      &amp;lt;/Object&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "      &amp;lt;Type&amp;gt;ProcessFull&amp;lt;/Type&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "       &amp;lt;WriteBackTableCreation&amp;gt;UseExisting&amp;lt;/WriteBackTableCreation&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "    &amp;lt;/Process&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "  &amp;lt;/Parallel&amp;gt;" &amp; vbCrLf                sXMLA = sXMLA + "&amp;lt;/Batch&amp;gt;" &amp; vbCrLf                sXMLA = Replace(sXMLA, "^", """")                SaveTextToFile(sXMLA.ToString(), sXMLA.ToString())                SaveTextToFile("################################## " &amp; sDatabaseID &amp; " Cubes Started  ####################################" &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                errMsg = strValCube &amp; ". Processing Cubes  Started at " &amp; DateTime.Now.ToString &amp; vbCrLf                SaveTextToFile(errMsg, strErrorFilePath, errMsg)                objServer.Execute(sXMLA)                errMsg = strValCube &amp; ". Processed Cubes End at " &amp; DateTime.Now.ToString &amp; vbCrLf                SaveTextToFile(errMsg, strErrorFilePath, errMsg)                SaveTextToFile("####Method 2:  For Each oCube In oDB.Cubes                    If oCube.Name &amp;lt;&amp;gt; "EquipmentUtilization" Then                        'If oCube.Name = "AssetOrders" Then                        Dim intLoopIndex As Integer                        Dim intLoop As Integer                        intLoop = oCube.Dimensions.Count()                        For intLoopIndex = 0 To oCube.Dimensions.Count - 1                            'System.Console.WriteLine("Hello from Visual Basic")                            sDimID = oCube.Dimensions.Item(intLoopIndex).DimensionID                            ' MsgBox(sDimID)                            If oCube.Dimensions.Item(intLoopIndex).Dimension.State = Microsoft.AnalysisServices.AnalysisState.Processed Then                                sProcessType = "ProcessUpdate"                            Else                                sProcessType = "ProcessFull"                            End If                            sXMLA = ""                            sXMLA = sXMLA + "&amp;lt;Batch xmlns=^http://schemas.microsoft.com/analysisservices/2003/engine^&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "  &amp;lt;Parallel&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "    &amp;lt;Process xmlns:xsd=^http://www.w3.org/2001/XMLSchema^ xmlns:xsi=^http://www.w3.org/2001/XMLSchema-instance^&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "      &amp;lt;Object&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "        &amp;lt;DatabaseID&amp;gt;" &amp; sDatabaseID &amp; "&amp;lt;/DatabaseID&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "        &amp;lt;DimensionID&amp;gt;" &amp; sDimID &amp; "&amp;lt;/DimensionID&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "      &amp;lt;/Object&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "      &amp;lt;Type&amp;gt;" &amp; sProcessType &amp; "&amp;lt;/Type&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "      &amp;lt;WriteBackTableCreation&amp;gt;UseExisting&amp;lt;/WriteBackTableCreation&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "    &amp;lt;/Process&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "  &amp;lt;/Parallel&amp;gt;" &amp; vbCrLf                            sXMLA = sXMLA + "&amp;lt;/Batch&amp;gt;" &amp; vbCrLf                            sXMLA = Replace(sXMLA, "^", """")                            SaveTextToFile(sXMLA.ToString(), sXMLA.ToString())                            SaveTextToFile(strVal &amp; ". " &amp; sDimID &amp; ":" &amp; sProcessType &amp; " -- Dimension Start Time:" &amp; DateTime.Now.ToString() &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                            objServer.Execute(sXMLA)                            SaveTextToFile(strVal &amp; ". " &amp; sDimID &amp; ":" &amp; sProcessType &amp; " -- Dimension End Time:" &amp; DateTime.Now.ToString() &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                            strVal += 1                        Next intLoopIndex                        For Each oMeasureGroup In oCube.MeasureGroups                            SaveTextToFile("                                                                             " &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                            SaveTextToFile("################################## " &amp; oMeasureGroup.Name &amp; " MeasureGroups Started  ####################################" &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                            errMsg = strValCube &amp; ". MeasureGroups " &amp; oMeasureGroup.Name &amp; " Started at " &amp; DateTime.Now.ToString &amp; vbCrLf                            SaveTextToFile(errMsg, strErrorFilePath, errMsg)                            oMeasureGroup.Process(Microsoft.AnalysisServices.ProcessType.ProcessFull) ' Process all measure groups                            errMsg = strValCube &amp; ". MeasureGroups " &amp; oMeasureGroup.Name &amp; " End at " &amp; DateTime.Now.ToString &amp; vbCrLf                            SaveTextToFile(errMsg, strErrorFilePath, errMsg)                            SaveTextToFile("################################## " &amp; oMeasureGroup.Name &amp; " MeasureGroups Completed  ####################################" &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                            SaveTextToFile("                                                                             " &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                            For Each oPartition In oMeasureGroup.Partitions                                SaveTextToFile("                                                                             " &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                                SaveTextToFile("################################## " &amp; oPartition.Name &amp; " Partition Started  ####################################" &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                                errMsg = strValCube &amp; ". Partition " &amp; oPartition.Name &amp; " Started at " &amp; DateTime.Now.ToString &amp; vbCrLf                                SaveTextToFile(errMsg, strErrorFilePath, errMsg)                                oPartition.Process(Microsoft.AnalysisServices.ProcessType.ProcessFull)  ' Process all partitions                                errMsg = strValCube &amp; ". Partition " &amp; oPartition.Name &amp; " End at " &amp; DateTime.Now.ToString &amp; vbCrLf                                SaveTextToFile(errMsg, strErrorFilePath, errMsg)                                SaveTextToFile("################################## " &amp; oPartition.Name &amp; " Partition Completed  ####################################" &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                                SaveTextToFile("                                                                             " &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                            Next                        Next                        SaveTextToFile("                                                                             " &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                        SaveTextToFile("################################## " &amp; oCube.Name &amp; " Cube Started  ####################################" &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                        errMsg = strValCube &amp; ". Processing Cube " &amp; oCube.Name &amp; " Started at " &amp; DateTime.Now.ToString &amp; vbCrLf                        SaveTextToFile(errMsg, strErrorFilePath, errMsg)                        oCube.Process(Microsoft.AnalysisServices.ProcessType.ProcessFull)                        errMsg = strValCube &amp; ". Processed Cube " &amp; oCube.Name &amp; " End at " &amp; DateTime.Now.ToString &amp; vbCrLf                        SaveTextToFile(errMsg, strErrorFilePath, errMsg)                        SaveTextToFile("################################## " &amp; oCube.Name &amp; " Cube Completed  ####################################" &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                        SaveTextToFile("                                                                             " &amp; vbCrLf, strErrorFilePath, "DIM" &amp; sDimID &amp; vbCrLf)                        strValCube += 1                    End If 'EquipmentUtilization                    oCube.Refresh()                NextRegards,Karunkar</description><pubDate>Wed, 31 Oct 2012 01:15:55 GMT</pubDate><dc:creator>pkkrao1</dc:creator></item></channel></rss>