Unione di partizioni (XMLA)

Se le partizioni dispongono della stessa progettazione e delle stessa struttura delle aggregazioni, è possibile unirle tramite il comando MergePartitions disponibile in XML for Analysis (XMLA). L'unione è un'azione particolarmente importante da eseguire quando si gestiscono partizioni, soprattutto per le partizioni che contengono dati cronologici partizionati in base alla data.

Un cubo finanziario può utilizzare ad esempio due partizioni:

  • Una partizione rappresenta i dati finanziari per l'anno corrente utilizzando impostazioni di archiviazione OLAP relazionale (ROLAP) in tempo reale per motivi di prestazioni.

  • Un'altra partizione contiene dati finanziari per gli anni precedenti utilizzando impostazioni di archiviazione OLAP multidimensionale (MOLAP) per l'archiviazione.

Entrambe le partizioni utilizzano impostazioni di archiviazione diverse, ma la stessa progettazione delle aggregazioni. Anziché elaborare il cubo attraverso anni di dati cronologici al termine dell'anno, è possibile utilizzare il comando MergePartitions per unire la partizione relativa all'anno corrente con quella relativa agli anni precedenti. In questo modo è possibile mantenere i dati aggregati senza che sia necessaria un'elaborazione completa del cubo che potrebbe richiedere molto tempo.

Specifica di partizioni da unire

Quando il comando MergePartitions viene eseguito, i dati aggregati archiviati nelle partizioni di origine specificate nella proprietà Source vengono aggiunti alla partizione di destinazione specificata nella proprietà Target.

Nota

La proprietà Source può contenere più di un riferimento all'oggetto partizione, a differenza della proprietà Target.

Per essere unite, le partizioni specificate nelle proprietà Source e Target devono essere contenute dallo stesso gruppo di misure e devono utilizzare la stessa progettazione delle aggregazioni. In caso contrario si verifica un errore.

Le partizioni specificate in Source vengono eliminate dopo che il comando MergePartitions è stato completato correttamente.

Esempi

Descrizione

Nell'esempio seguente vengono unite tutte le partizioni del gruppo di misure Customer Counts del cubo Adventure Works del database di esempio Adventure Works DW di Microsoft SQL Server Analysis Services nella stessa partizione Customers_2004.

Codice

<MergePartitions xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
  <Sources>
    <Source>
      <DatabaseID>Adventure Works DW</DatabaseID>
      <CubeID>Adventure Works DW</CubeID>
      <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>
      <PartitionID>Internet_Sales_2001</PartitionID>
    </Source>
    <Source>
      <DatabaseID>Adventure Works DW</DatabaseID>
      <CubeID>Adventure Works DW</CubeID>
      <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>
      <PartitionID>Internet_Sales_2002</PartitionID>
    </Source>
    <Source>
      <DatabaseID>Adventure Works DW</DatabaseID>
      <CubeID>Adventure Works DW</CubeID>
      <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>
      <PartitionID>Internet_Sales_2003</PartitionID>
    </Source>
  </Sources>
  <Target>
    <DatabaseID>Adventure Works DW</DatabaseID>
    <CubeID>Adventure Works DW</CubeID>
    <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>
    <PartitionID>Internet_Sales_2004</PartitionID>
  </Target>
</MergePartitions>