2012-03-01 5 views
9

Qual è la differenza tra tuple e set in MDX. Come possiamo distinguere entrambi e quando li stiamo usando.Differenza tra tuple e set in mdx

+2

MSDN: [membri, tuple e insiemi] (http://msdn.microsoft.com/en-us/library/aa216769 (v = sql.80) .aspx) –

+0

@guts .. puoi spiegarmi in un modo semplice ..? – Searcher

risposta

10

Una tupla è un membro di gerarchia singolo preso da tutte le dimensioni. Supponiamo che Time.[2nd half] sia una tupla di dimensione temporale. Allo stesso modo possiamo avere più tuple e le rappresentiamo nelle parentesi '(', ')'. Ad esempio:

(Time.[2nd half], Color.Dark.Red). 

Questo non è altro che l'intersezione matematica dei nodi. possiamo rappresentare i nodi in matematica come (2,1) nello stesso modo sopra l'espressione funzionerà.

Ora che arriva alle scene non è altro che la composizione delle tuple. set contiene una o più tuple può anche zero. li rappresentiamo in {,} parentesi graffe. Ad esempio:

{ (Time.[1st half], Color.Dark.Red), (Time.[2nd half], Color.Dark.Blue) } 
+0

Che cos'è la logica dietro, & * La sua confusione per me. – Aditya

5

This article descrive i termini Stati, Tuple e Situato nei dettagli.

Proverò a spiegarlo in modo semplice.

poche parole, un tupla è una fetta atomico di dati in una dimensione e una set è una collezione di tuple. Ad esempio, è possibile avere una dimensione Books con tuple Sherlock Holmes, Tom Sawyer, CLR via C#, Code Complete e Quantum Physics for Dummies.
Successivamente, è possibile organizzare queste tuple in insiemi denominati, ad esempio Programming, Fiction e Natural Sciences.

[Books].&[Sherlock Holmes]       -- Tuple 
[Books].&[CLR via C#]        -- Tuple 
{ [Books].&[CLR via C#], [Books].&[Code Complete] } -- Set 

Ci sono alcuni functions in MDX che restituiscono insiemi o tuple, ed è spesso utile sapere come convertire una tupla per un set e viceversa. Ad esempio, la funzione Item(...) accetta una tupla specifica da un set. Includendo più tuple in { , , } verrà creato un set con queste tuple.

L'esempio che ho descritto è piuttosto parziale e non copre l'intera teoria, ma potrebbe fornire una buona conoscenza di base di come funzionano questi concetti.

+0

dicendo che '[Libri]. & [Sherlock Holmes]' è una tupla leggermente fuorviante in quanto ignora il fatto che tutte le altre dimensioni richiedono una coordinata allo stesso tempo. Inoltre l'uso di '()' è importante in 'MDX' quando si spiegano le tuple. – whytheq

11

essere venuto a MDX da una prospettiva più di matematica questo è il mio introito sulla questione:

Immaginate di avere 3d cubo con dimensioni X, Y e Z. Il numero di celle nel cubo è il numero di membri in X moltiplicati per il numero di membri di Y moltiplicati per il numero di membri di Z.

Ogni cella con una coordinata nel cubo basata su un valore da X, Y e Z. Quella coordinata è una tupla.

Allora supponiamo:

  • X è Misure,
  • Y è anni,
  • Z è Prodotti,

Poi una singola cellula potrebbe essere le vendite di laptop per il 1999. Le coordinate di cella saranno: logicamente e fisicamente (X, Y, Z) questa è una tupla come

(Measures.Sales, Years.[1999], Products.[Laptop]) 

Ora consente di dire che vogliamo più celle, allora abbiamo bisogno di più tuple, giusto? Sì, un Set è fondamentalmente più tuple. In realtà da più includo 0 e 1. Quindi estendere il nostro esempio, potremmo avere i computer portatili a partire dal 1999 e desktop dal 2001:

{ 
    (Measures.Sales, Years.[1999], Products.[Laptop]) , 
    (Measures.Sales, Years.[2001], Products.[Desktop]) 
} 

Così si può vedere che si finisce con più elementi con un set, e un singolo articolo con una tupla ......