Showing posts with label ssas. Show all posts
Showing posts with label ssas. Show all posts

Wednesday, March 21, 2012

Multiple fact tables in SSAS 2005

Can someone please provide me with a link to an article, which explains the concept of multiple fact tables in SSAS 2005?

Thanks in advance,

Saurav

Are you talking about multiple fact tables as base for partitions or different measure group. In other words, are your fact tables have exactly the same structure? Or the structure is different and every fact table has it's own set of key columns?

Edward.
--
This posting is provided "AS IS" with no warranties, and confers no rights.

|||

I do not have a link to an article.

If you are aware of the design in AS2000 you know that you can use one fact table in each cube. This is referred as a physical cube because it has an fact table tied to it.

On the other hand you can join two or more cubes(physical) in virtual cubes.

In AS2005(or SSAS2005) a cube can include one or many fact tables and each fact table becomes a measure group in this cube.

The concept of virtual cubes have disappeared in SSAS2005 but you can say that a cube with many fact tables(more than one) is a virtual cube in the old AS2000 meaning.

Most recent findings and post regarding using more than one fact table / measure group in SSAS2005 say that you should be careful about this.

Regards

Thomas Ivarsson

Monday, February 20, 2012

Multiple <Create>...</Create> in one file Problem

I'm trying to create multiple dimensions (almost 800) in an SSAS 2005 database through one XMLA script file in an XMLA Query window in Management Studio. I have generated the <Create>...</Create> commands and tested that a representative sample of them execute correctly individually. However, when I paste them all (or just 2 of them) into the query window one right after the other and attempt to run the file, I get an error that claims only one <Create> command can appear:

"The 'Create' element at line 58, column 76 ('http://schemas.microsoft.com/analysisservices/2003/engine' namespace) appears more than once under Envelope/Body/Execute/Command."

If I understand the documentation on the Create element correctly, you can have more than one such element within the <Command> </Command> element:

"0-n: Optional element that can occur more than once."

Anyone have an ideas on how to make this work? I'm trying to create 790+ dimensions, so I'd sure like to avoid executing each script manually.

hello Bob,

i think you could use <Batch> and specify all your create elements underneath. Books Online describe Batch in more details.

hope this helps,

|||

Hi, Mary! Thanks for your response.

I've actually tried <Batch><Create>...</Create><Create>...</Create></Batch> and it did not work. It complains that the Batch element may not occur within the <Command> element, although the documentation does say you can have <Batch> within <Command>.

Other ideas?

Bob

|||

i think something like the following should work:

<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Body>
<Execute xmlns="urn:schemas-microsoft-com:xml-analysis">
<Command>
<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
<Create>..1st create.. .</Create>
<Create>..2nd create...</Create>
</Batch>
</Command>
<Properties>
<PropertyList>... properties list if any .... </PropertyList>
</Properties>
</Execute>
</Body>
</Envelope>

actually, SSMS can accept just the <batch> part itself i think (since it adds envelope/body .. etc. when needed).

hope this helps,

|||

Aha! I had not included the xmlns namespace attribute. When I added the namespace attribute xmlns="http://schemas.microsoft.com/analysisservices/2003/engine", it worked like a charm.

Thanks, Mary!