今回も引き続き、SSAS(SQL Server Analysis Services)プロジェクトにディメンション、キューブ等を追加する手順について述べる。今回は、スクリプトファイルの作成手順について述べる。
前提条件
SQL Server Analysis Serverに、ディメンション、キューブを含むSSAS(SQL Server Analysis Services)プロジェクトをデプロイ済であること。Analysis Servicesに接続すると下図のようになっていること。
やってみたこと
- データソースビューを作成するスクリプトファイルの作成
- ディメンションを作成するスクリプトファイルの作成
- キューブを作成するスクリプトファイルの作成
- SSASプロジェクトのプロセス処理を行うスクリプトファイルの作成
データソースビューを作成するスクリプトファイルの作成
データソースビューを作成するスクリプトファイルは、以下の手順で作成できる。
1) 下図のように、データソースビューを選択し右クリックし、「データソースビューのスクリプトファイル作成(Script Data Source View as)」→「作成(Create To)」を順次選択後、「ファイル(File)」メニューを選択
また、作成されたデータソースビュー生成用のスクリプトファイル(create_TestSSASDataSourceView.xmla)の内容は、以下の通り。
<Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> <ParentObject> <DatabaseID>TestSSASProject</DatabaseID> </ParentObject> <ObjectDefinition> <DataSourceView 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" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500"> <ID>TestSSASDataSourceView</ID> <Name>TestSSASDataSourceView</Name> <Annotations> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowFriendlyNames</Name> <Value>true</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:CurrentLayout</Name> <Value>_ALL_TABLES_</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:SchemaRestriction</Name> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:RetrieveRelationships</Name> <Value>true</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:Layouts</Name> <Value> <Layouts xmlns=""> <Diagram> <Name>_ALL_TABLES_</Name> <DiagramLayout> <dds> <diagram fontclsid="{0BE35203-8F91-11CE-9DE3-00AA004BB851}" mouseiconclsid="{0BE35204-8F91-11CE-9DE3-00AA004BB851}" defaultlayout="MSDDS.Rectilinear" defaultlineroute="MSDDS.Rectilinear" version="7" nextobject="2" scale="100" pagebreakanchorx="0" pagebreakanchory="0" pagebreaksizex="0" pagebreaksizey="0" scrollleft="-14982" scrolltop="-7713" gridx="150" gridy="150" marginx="5000" marginy="5000" zoom="100" x="33020" y="18150" backcolor="16777215" defaultpersistence="2" PrintPageNumbersMode="3" PrintMarginTop="0" PrintMarginBottom="635" PrintMarginLeft="0" PrintMarginRight="0" marqueeselectionmode="0" mousepointer="0" snaptogrid="0" autotypeannotation="1" showscrollbars="0" viewpagebreaks="0" donotforceconnectorsbehindshapes="1" backpictureclsid="{00000000-0000-0000-0000-000000000000}"> <font> <ddsxmlobjectstreamwrapper binary="01000000900144420100065461686f6d61" /> </font> <mouseicon> <ddsxmlobjectstreamwrapper binary="6c74000000000000" /> </mouseicon> </diagram> <layoutmanager> <ddsxmlobj /> </layoutmanager> <ddscontrol controlprogid="DdsShapes.DdsObjectManagedBridge" tooltip="sales" left="20" top="0" logicalid="1" controlid="1" masterid="0" hint1="0" hint2="0" width="3016" height="2725" noresize="0" nomove="0" nodefaultattachpoints="0" autodrag="1" usedefaultiddshape="1" selectable="1" showselectionhandles="1" allownudging="1" isannotation="0" dontautolayout="0" groupcollapsed="0" tabstop="1" visible="1" snaptogrid="0"> <control> <ddsxmlobjectstreaminitwrapper binary="000e0000c80b0000a50a0000" /> </control> <layoutobject> <ddsxmlobj> <property name="LogicalObject" value="dbo_sales" vartype="8" /> </ddsxmlobj> </layoutobject> <shape groupshapeid="0" groupnode="0" /> </ddscontrol> </dds> </DiagramLayout> <ShowRelationshipNames>False</ShowRelationshipNames> <UseDiagramDefaultLayout>True</UseDiagramDefaultLayout> <DiagramViewPortLeft>-14982</DiagramViewPortLeft> <DiagramViewPortTop>-7713</DiagramViewPortTop> <DiagramBoundingLeft>0</DiagramBoundingLeft> <DiagramBoundingTop>0</DiagramBoundingTop> <DiagramZoom>100</DiagramZoom> </Diagram> </Layouts> </Value> </Annotation> </Annotations> <DataSourceID>TestSSASDataSource</DataSourceID> <Schema> <xs:schema id="TestSSASDataSourceView" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop"> <xs:element name="TestSSASDataSourceView" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="dbo_sales" msprop:IsLogical="True" msprop:FriendlyName="sales" msprop:DbTableName="sales" msprop:TableType="View" msprop:QueryDefinition="SELECT sale_date, product_name, place_name, sales_amount, ROW_NUMBER() over (ORDER BY sale_date) as rn FROM sales" msprop:QueryBuilder="SpecificQueryBuilder"> <xs:complexType> <xs:sequence> <xs:element name="sale_date" msprop:DbColumnName="sale_date" msprop:FriendlyName="sale_date" type="xs:dateTime" minOccurs="0" /> <xs:element name="product_name" msprop:DbColumnName="product_name" msprop:FriendlyName="product_name" minOccurs="0"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:maxLength value="50" /> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="place_name" msprop:DbColumnName="place_name" msprop:FriendlyName="place_name" minOccurs="0"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:maxLength value="12" /> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="sales_amount" msprop:DbColumnName="sales_amount" msprop:FriendlyName="sales_amount" type="xs:int" minOccurs="0" /> <xs:element name="rn" msprop:DbColumnName="rn" type="xs:long" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> </xs:element> </xs:schema> <TestSSASDataSourceView xmlns="" /> </Schema> </DataSourceView> </ObjectDefinition> </Create>
ディメンションを作成するスクリプトファイルの作成
ディメンションを作成するスクリプトファイルは、下図のように、ディメンションを選択し右クリックし、「ディメンションのスクリプトファイル作成(Script Dimension as)」→「作成(Create To)」を順次選択後、「ファイル(File)」メニューを選択
その後のスクリプトファイル作成手順は、データソースビューの場合と同じ。作成されたディメンション生成用のスクリプトファイル(create_TestSSASDimension.xmla)の内容は、以下の通り。
<Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> <ParentObject> <DatabaseID>TestSSASProject</DatabaseID> </ParentObject> <ObjectDefinition> <Dimension 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" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500"> <ID>TestSSASDimension</ID> <Name>TestSSASDimension</Name> <Annotations> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramLayout</Name> <Value> <dds xmlns=""> <diagram fontclsid="{0BE35203-8F91-11CE-9DE3-00AA004BB851}" mouseiconclsid="{0BE35204-8F91-11CE-9DE3-00AA004BB851}" defaultlayout="MSDDS.Rectilinear" defaultlineroute="MSDDS.Rectilinear" version="7" nextobject="2" scale="100" pagebreakanchorx="0" pagebreakanchory="0" pagebreaksizex="0" pagebreaksizey="0" scrollleft="-4107" scrolltop="-6840" gridx="150" gridy="150" marginx="5000" marginy="5000" zoom="100" x="11271" y="16828" backcolor="16777215" defaultpersistence="2" PrintPageNumbersMode="3" PrintMarginTop="0" PrintMarginBottom="635" PrintMarginLeft="0" PrintMarginRight="0" marqueeselectionmode="0" mousepointer="0" snaptogrid="0" autotypeannotation="1" showscrollbars="0" viewpagebreaks="0" donotforceconnectorsbehindshapes="1" backpictureclsid="{00000000-0000-0000-0000-000000000000}"> <font> <ddsxmlobjectstreamwrapper binary="01000000900144420100065461686f6d61" /> </font> <mouseicon> <ddsxmlobjectstreamwrapper binary="6c74000000000000" /> </mouseicon> </diagram> <layoutmanager> <ddsxmlobj /> </layoutmanager> <ddscontrol controlprogid="DdsShapes.DdsObjectManagedBridge" tooltip="sales" left="20" top="0" logicalid="1" controlid="1" masterid="0" hint1="0" hint2="0" width="3016" height="3149" noresize="0" nomove="0" nodefaultattachpoints="0" autodrag="1" usedefaultiddshape="1" selectable="1" showselectionhandles="1" allownudging="1" isannotation="0" dontautolayout="0" groupcollapsed="0" tabstop="1" visible="1" snaptogrid="0"> <control> <ddsxmlobjectstreaminitwrapper binary="000e0000c80b00004d0c0000" /> </control> <layoutobject> <ddsxmlobj> <property name="LogicalObject" value="dbo_sales" vartype="8" /> </ddsxmlobj> </layoutobject> <shape groupshapeid="0" groupnode="0" /> </ddscontrol> </dds> </Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowFriendlyNames</Name> <Value>true</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowRelationshipNames</Name> <Value>false</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:UseDiagramDefaultLayout</Name> <Value>true</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortLeft</Name> <Value>-4107</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortTop</Name> <Value>-6840</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingLeft</Name> <Value>20</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingTop</Name> <Value>0</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramZoom</Name> <Value>100</Value> </Annotation> </Annotations> <Source xsi:type="DataSourceViewBinding"> <DataSourceViewID>TestSSASDataSourceView</DataSourceViewID> </Source> <ErrorConfiguration> <KeyNotFound>ReportAndStop</KeyNotFound> <KeyDuplicate>ReportAndStop</KeyDuplicate> <NullKeyNotAllowed>ReportAndStop</NullKeyNotAllowed> </ErrorConfiguration> <Language>1033</Language> <Collation>Latin1_General_CI_AS</Collation> <UnknownMemberName>Unknown</UnknownMemberName> <Attributes> <Attribute> <ID>Rn</ID> <Name>Rn</Name> <Usage>Key</Usage> <KeyColumns> <KeyColumn> <DataType>BigInt</DataType> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>rn</ColumnID> </Source> </KeyColumn> </KeyColumns> <NameColumn> <DataType>WChar</DataType> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>rn</ColumnID> </Source> </NameColumn> <AttributeRelationships> <AttributeRelationship> <AttributeID>Product Name</AttributeID> <Name>Product Name</Name> </AttributeRelationship> <AttributeRelationship> <AttributeID>Place Name</AttributeID> <Name>Place Name</Name> </AttributeRelationship> </AttributeRelationships> <OrderBy>Key</OrderBy> </Attribute> <Attribute> <ID>Product Name</ID> <Name>Product Name</Name> <KeyColumns> <KeyColumn> <DataType>WChar</DataType> <DataSize>50</DataSize> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>product_name</ColumnID> </Source> </KeyColumn> </KeyColumns> <NameColumn> <DataType>WChar</DataType> <DataSize>50</DataSize> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>product_name</ColumnID> </Source> </NameColumn> <OrderBy>Key</OrderBy> </Attribute> <Attribute> <ID>Place Name</ID> <Name>Place Name</Name> <KeyColumns> <KeyColumn> <DataType>WChar</DataType> <DataSize>12</DataSize> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>place_name</ColumnID> </Source> </KeyColumn> </KeyColumns> <NameColumn> <DataType>WChar</DataType> <DataSize>12</DataSize> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>place_name</ColumnID> </Source> </NameColumn> <OrderBy>Key</OrderBy> </Attribute> </Attributes> <ProactiveCaching> <SilenceInterval>-PT1S</SilenceInterval> <Latency>-PT1S</Latency> <SilenceOverrideInterval>-PT1S</SilenceOverrideInterval> <ForceRebuildInterval>-PT1S</ForceRebuildInterval> <Source xsi:type="ProactiveCachingInheritedBinding" /> </ProactiveCaching> </Dimension> </ObjectDefinition> </Create>
キューブを作成するスクリプトファイルの作成
キューブを作成するスクリプトファイルは、下図のように、キューブを選択し右クリックし、「キューブのスクリプトファイル作成(Script Cube as)」→「作成(Create To)」を順次選択後、「ファイル(File)」メニューを選択
その後のスクリプトファイル作成手順は、データソースビューの場合と同じ。作成されたキューブ生成用のスクリプトファイル(create_TestSSASCube.xmla)の内容は、以下の通り。
<Create xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> <ParentObject> <DatabaseID>TestSSASProject</DatabaseID> </ParentObject> <ObjectDefinition> <Cube 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" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500"> <ID>TestSSASCube</ID> <Name>TestSSASCube</Name> <Annotations> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramLayout</Name> <Value> <dds xmlns=""> <diagram fontclsid="{0BE35203-8F91-11CE-9DE3-00AA004BB851}" mouseiconclsid="{0BE35204-8F91-11CE-9DE3-00AA004BB851}" defaultlayout="MSDDS.Rectilinear" defaultlineroute="MSDDS.Rectilinear" version="7" nextobject="2" scale="100" pagebreakanchorx="0" pagebreakanchory="0" pagebreaksizex="0" pagebreaksizey="0" scrollleft="-14717" scrolltop="-6840" gridx="150" gridy="150" marginx="5000" marginy="5000" zoom="100" x="32491" y="11589" backcolor="16777215" defaultpersistence="2" PrintPageNumbersMode="3" PrintMarginTop="0" PrintMarginBottom="635" PrintMarginLeft="0" PrintMarginRight="0" marqueeselectionmode="0" mousepointer="0" snaptogrid="0" autotypeannotation="1" showscrollbars="0" viewpagebreaks="0" donotforceconnectorsbehindshapes="1" backpictureclsid="{00000000-0000-0000-0000-000000000000}"> <font> <ddsxmlobjectstreamwrapper binary="01000000900144420100065461686f6d61" /> </font> <mouseicon> <ddsxmlobjectstreamwrapper binary="6c74000000000000" /> </mouseicon> </diagram> <layoutmanager> <ddsxmlobj /> </layoutmanager> <ddscontrol controlprogid="DdsShapes.DdsObjectManagedBridge" tooltip="sales" left="20" top="0" logicalid="1" controlid="1" masterid="0" hint1="0" hint2="0" width="3016" height="3149" noresize="0" nomove="0" nodefaultattachpoints="0" autodrag="1" usedefaultiddshape="1" selectable="1" showselectionhandles="1" allownudging="1" isannotation="0" dontautolayout="0" groupcollapsed="0" tabstop="1" visible="1" snaptogrid="0"> <control> <ddsxmlobjectstreaminitwrapper binary="000e0000c80b00004d0c0000" /> </control> <layoutobject> <ddsxmlobj> <property name="LogicalObject" value="dbo_sales" vartype="8" /> </ddsxmlobj> </layoutobject> <shape groupshapeid="0" groupnode="0" /> </ddscontrol> </dds> </Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowFriendlyNames</Name> <Value>true</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:ShowRelationshipNames</Name> <Value>false</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:UseDiagramDefaultLayout</Name> <Value>true</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortLeft</Name> <Value>-14717</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramViewPortTop</Name> <Value>-6840</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingLeft</Name> <Value>20</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramBoundingTop</Name> <Value>0</Value> </Annotation> <Annotation> <Name>http://schemas.microsoft.com/DataWarehouse/Designer/1.0:DiagramZoom</Name> <Value>100</Value> </Annotation> </Annotations> <Language>1033</Language> <Collation>Latin1_General_CI_AS</Collation> <Dimensions> <Dimension> <ID>TestSSASDimension</ID> <Name>TestSSASDimension</Name> <DimensionID>TestSSASDimension</DimensionID> <Attributes> <Attribute> <AttributeID>Rn</AttributeID> </Attribute> <Attribute> <AttributeID>Product Name</AttributeID> </Attribute> <Attribute> <AttributeID>Place Name</AttributeID> </Attribute> </Attributes> </Dimension> </Dimensions> <MeasureGroups> <MeasureGroup> <ID>Sales</ID> <Name>Sales</Name> <Measures> <Measure> <ID>Sales Amount</ID> <Name>Sales Amount</Name> <DataType>Integer</DataType> <Source> <DataType>Integer</DataType> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>sales_amount</ColumnID> </Source> </Source> </Measure> </Measures> <StorageMode>Molap</StorageMode> <ProcessingMode>Regular</ProcessingMode> <Dimensions> <Dimension xsi:type="RegularMeasureGroupDimension"> <CubeDimensionID>TestSSASDimension</CubeDimensionID> <Cardinality>One</Cardinality> <Attributes> <Attribute> <AttributeID>Rn</AttributeID> <KeyColumns> <KeyColumn> <DataType>BigInt</DataType> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>rn</ColumnID> </Source> </KeyColumn> </KeyColumns> <Type>Granularity</Type> </Attribute> <Attribute> <AttributeID>Product Name</AttributeID> <KeyColumns> <KeyColumn> <DataType>WChar</DataType> <DataSize>50</DataSize> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>product_name</ColumnID> </Source> </KeyColumn> </KeyColumns> </Attribute> <Attribute> <AttributeID>Place Name</AttributeID> <KeyColumns> <KeyColumn> <DataType>WChar</DataType> <DataSize>12</DataSize> <Source xsi:type="ColumnBinding"> <TableID>dbo_sales</TableID> <ColumnID>place_name</ColumnID> </Source> </KeyColumn> </KeyColumns> </Attribute> </Attributes> </Dimension> </Dimensions> <Partitions> <Partition> <ID>Sales</ID> <Name>Sales</Name> <Source xsi:type="DsvTableBinding"> <DataSourceViewID>TestSSASDataSourceView</DataSourceViewID> <TableID>dbo_sales</TableID> </Source> <StorageMode>Molap</StorageMode> <ProcessingMode>Regular</ProcessingMode> <ProactiveCaching> <SilenceInterval>-PT1S</SilenceInterval> <Latency>-PT1S</Latency> <SilenceOverrideInterval>-PT1S</SilenceOverrideInterval> <ForceRebuildInterval>-PT1S</ForceRebuildInterval> <Source xsi:type="ProactiveCachingInheritedBinding" /> </ProactiveCaching> </Partition> </Partitions> <ProactiveCaching> <SilenceInterval>-PT1S</SilenceInterval> <Latency>-PT1S</Latency> <SilenceOverrideInterval>-PT1S</SilenceOverrideInterval> <ForceRebuildInterval>-PT1S</ForceRebuildInterval> <Source xsi:type="ProactiveCachingInheritedBinding" /> </ProactiveCaching> </MeasureGroup> </MeasureGroups> <Source> <DataSourceViewID>TestSSASDataSourceView</DataSourceViewID> </Source> <ProactiveCaching> <SilenceInterval>-PT1S</SilenceInterval> <Latency>-PT1S</Latency> <SilenceOverrideInterval>-PT1S</SilenceOverrideInterval> <ForceRebuildInterval>-PT1S</ForceRebuildInterval> <Source xsi:type="ProactiveCachingInheritedBinding" /> </ProactiveCaching> </Cube> </ObjectDefinition> </Create>
SSASプロジェクトのプロセス処理を行うスクリプトファイルの作成
作成したディメンション、キューブを使えるようにするためのプロセス処理(Processing)を作成するスクリプトファイルは、以下の手順で作成できる。
1) 下図のように、SSASプロジェクトを選択し右クリックし、「プロセス(Process)」メニューを選択
2) スクリプトメニューから「スクリプト処理をファイルに出力(Script Action to File)」を選択
また、作成されたプロセス処理生成用のスクリプトファイル(process_TestSSASProject.xmla)の内容は、以下の通り。
<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" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500"> <Object> <DatabaseID>TestSSASProject</DatabaseID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> </Parallel> </Batch>
なお、それぞれのスクリプトファイルを直接更新すれば、SSDT(SQL Server Data Tools)ツールを使わなくても、コマンド操作により、SSASプロジェクトの内容を更新することができる。