Udostępnij za pośrednictwem


Processing Objects (XMLA)

In Microsoft SQL Server Analysis Services, processing is the step or series of steps that turn data into information for business analysis.Przetwarzanie jest różna w zależności od typu obiektu, ale przetwarzanie jest zawsze części danych włączanie do informacji.

Do procesu Analysis Services obiekt, można użyć Proces polecenia.The Process command can process the following objects on an Analysis Services wystąpienie:

  • Moduły

  • Bazy danych

  • Wymiary

  • Grupy miar

  • Modele wyszukiwania

  • Struktury wyszukiwania

  • Partycje

Aby kontrolować przetwarzanie obiektów, Process polecenie ma różne właściwości, które mogą być zestaw. The Process command has properties that control: ile przetwarzania zostaną wykonane, obiekty, które mają być przetwarzane, czy ma być używany do powiązania wyjściowego z wiersza, sposobu obsługi błędów i jak zarządzać tabel stornowania.

Określanie przetwarzania opcje

The Type właściwość of the Process command specifies the processing option to use when processing the object. Aby uzyskać więcej informacji na temat opcji przetwarzania zobacz Processing Options and Settings.

Poniższa tabela zawiera listę stałych dla Type Właściwość i różnych obiektów, które mogą być przetwarzane przy użyciu każdej stała.

Type wartość

Tworzenie odpowiednich obiektów

ProcessFull

Moduł, bazy danych, wymiar, grupa miar, model wyszukiwania, struktura wyszukiwania, partycji

ProcessAdd

Wymiar partycji

ProcessUpdate

Wymiar

ProcessIndexes

Wymiar, moduł, grupa miar, partycji

ProcessData

Wymiar, moduł, grupa miar, partycji

ProcessDefault

Moduł, bazy danych, wymiar, grupa miar, model wyszukiwania, struktura wyszukiwania, partycji

ProcessClear

Moduł, bazy danych, wymiar, grupa miar, model wyszukiwania, struktura wyszukiwania, partycji

ProcessStructure

Moduł struktura wyszukiwania

ProcessClearStructureOnly

Struktura wyszukiwania

ProcessScriptCache

Moduł

Aby uzyskać więcej informacji na temat przetwarzania Analysis Services obiekty, zobacz Processing Analysis Services Objects.

Określanie obiektów do przetworzenia się

The Object właściwość of the Process command contains the object identifier of the object to be processed. Tylko jeden obiekt może być określony w Process polecenie, ale przetwarzanie obiektu przetwarza również wszystkie jego obiekty podrzędność. Na przykład przetwarzania grupa miar w module przetwarza wszystkie partycje z tego grupa miar, podczas gdy przetwarzanie bazy danych przetwarza wszystkie obiekty, w tym moduły, wymiary i struktury wyszukiwania, które znajdują się w bazie danych.

Jeśli użytkownik zestaw ProcessAffectedObjects atrybut Process polecenie, aby wartość true, wszelkie powiązane obiekt przetwarzania określonego obiektu również jest przetwarzane. Na przykład, jeśli wymiar przyrostowo zostanie zaktualizowany przy użyciu ProcessUpdate Przetwarzanie opcji Process polecenia dowolnej partycji, na których agregacji są unieważniane z powodu członkowie są dodawane lub usuwane są również przetwarzane przez Analysis Services Jeśli ProcessAffectedObjects jest ustawiona na wartość true. W tym przypadek jednym Process polecenie może przetwarzać wiele obiektów na Analysis Services wystąpienie, ale Analysis Services Określa, które obiekty oprócz jednego obiektu określonego w Process polecenie musi być również przetwarzane.

Jednak przetwarzać wiele obiektów, takich jak wymiary, w tym samym czasie za pomocą wielu Process polecenia w Batch polecenie. Operacje partia zapewnia lepiej poziom kontroli szeregowego lub równoległego przetwarzania obiektów na Analysis Services wystąpienie niż przy użyciu ProcessAffectedObjects atrybut i można dostroić swoje podejście przetwarzania dla większych Analysis Services bazy danych. Aby uzyskać więcej informacji dotyczących wykonywania operacji wsadowych Zobacz Performing Batch Operations (XMLA).

Określanie wiązania wyjście z wiersza

Jeśli Process polecenie nie jest zawarty w Batch polecenia, można opcjonalnie określić powiązania wyjściowego wiersza w Powiązania, Źródła danych, and DataSourceView właściwościProcess polecenie dla obiektów do przetworzenia. Limit wierszy wiązanie są odwołania do źródeł danych, widoki urządzenie źródłowe danych i inne obiekty, w którym wiązania występuje tylko podczas wykonywania Process polecenie, a które zastępują wszelkie istniejące wiązanie skojarzone z obiektami przetwarzane. Jeżeli nie podano powiązania wyjściowego linii, używane są powiązania aktualnie skojarzone z obiektami na przetworzenie.

Powiązania wyjściowego z wiersza są używane w następujących okolicznościach:

  • Stopniowo przetwarzania partycji, w którym zamiast tabela fakt lub filtru o istniejącej tabela fakt należy określić, aby upewnić się, że wiersze nie są liczone dwa razy.

  • Using a data flow task in Microsoft SQL Server Integration Services to provide data while processing a dimension, mining model, or partition.

Powiązania wyjściowego z wiersza są opisane w ramach Analysis Services wykonywanie wykonywanie skryptów języka (ASSL).Aby uzyskać więcej informacji na temat powiązań Limit wierszy w ASSL zobacz Data Sources and Bindings (Analysis Services - Multidimensional Data).

Stopniowo aktualizowanie partycji

Przyrostowo aktualizowanie partycji już przetworzone zazwyczaj wymaga się linii wiązania ponieważ wiązanie określone dla odniesienia partycji tabela fakt już zagregowane w partycji danych.Podczas stopniowego aktualizowania partycji już przetworzone przy użyciu Process polecenia, Analysis Services wykonuje następujące czynności:

  • Tworzy partycję tymczasowy o strukturze identyczne z partycji przyrostowo aktualizacji.

  • Przetwarza tymczasowe partycji, przy użyciu wiązanie wyjściowego z wiersza określonego w Process polecenie.

  • Scala tymczasowe partycję z istniejących wybranej partycji.

Aby uzyskać więcej informacji na temat scalania partycje przy użyciu XML for Analysis (XMLA) zobacz Merging Partitions (XMLA).

Obsługa błędów przetwarzania

The ErrorConfiguration właściwość of the Process command lets you specify how to handle errors encountered while processing an object. Na przykład podczas przetwarzania wymiaru, Analysis Services napotka zduplikowanych wartości kolumna klucz klucz atrybut. Ponieważ atrybut klucze muszą być unikatowe, Analysis Services Usuwanie zduplikowanych rekordów. Na podstawie KeyDuplicate Właściwość ErrorConfiguration, Analysis Services można:

  • Ignoruj błąd i kontynuować przetwarzanie wymiaru.

  • Zwraca komunikat informujący Analysis Services Napotkano zduplikowany klucz i kontynuować przetwarzanie.

Istnieje wiele warunków podobne, dla którego ErrorConfiguration udostępnia opcje podczas Process polecenie.

Zarządzanie stornowania tabele

Jeśli Process polecenie napotka partycji zapisu lub grupy moduł lub miara dla partycji, która nie jest już całkowicie przetworzone, tabela zapisu nie mogą już istnieć na tej partycji. The WritebackTableCreation właściwość of the Process command determines whether Analysis Services should create a writeback tabela.

Przykłady

Description

W poniższym przykładzie pełni przetwarza Adventure Works DW sample Analysis Services Baza danych.

Code

<Process xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
  <Object>
    <DatabaseID>Adventure Works DW</DatabaseID>
  </Object>
  <Type>ProcessFull</Type>
  <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>

Description

W poniższym przykładzie przyrostowo przetwarza Internet_Sales_2004 partycji w Sprzedaż w Internecie Grupa miar Adventure Works DW moduł w Adventure Works DW sample Analysis Services Baza danych. The Process command is adding aggregations for order dates later than December 31, 2004 to the partition by using an out-of-line query wiązanie in the Bindings właściwość of the Process command to retrieve the fakt tabela rows from which to generate aggregations to add to the partition.

Code

<Process ProcessAffectedObjects="true" xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
  <Object>
    <DatabaseID>Adventure Works DW</DatabaseID>
    <CubeID>Adventure Works DW</CubeID>
    <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>
    <PartitionID>Internet_Sales_2004</PartitionID>
  </Object>
  <Bindings>
    <Binding>
      <DatabaseID>Adventure Works DW</DatabaseID>
      <CubeID>Adventure Works DW</CubeID>
      <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>
      <PartitionID>Internet_Sales_2004</PartitionID>
      <Source xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="QueryBinding">
        <DataSourceID>Adventure Works DW</DataSourceID>
        <QueryDefinition>
          SELECT
            [dbo].[FactInternetSales].[ProductKey],
            [dbo].[FactInternetSales].[OrderDateKey],
            [dbo].[FactInternetSales].[DueDateKey],
            [dbo].[FactInternetSales].[ShipDateKey], 
            [dbo].[FactInternetSales].[CustomerKey], 
            [dbo].[FactInternetSales].[PromotionKey],
            [dbo].[FactInternetSales].[CurrencyKey],
            [dbo].[FactInternetSales].[SalesTerritoryKey],
            [dbo].[FactInternetSales].[SalesOrderNumber],
            [dbo].[FactInternetSales].[SalesOrderLineNumber],
            [dbo].[FactInternetSales].[RevisionNumber],
            [dbo].[FactInternetSales].[OrderQuantity],
            [dbo].[FactInternetSales].[UnitPrice],
            [dbo].[FactInternetSales].[ExtendedAmount],
            [dbo].[FactInternetSales].[UnitPriceDiscountPct],
            [dbo].[FactInternetSales].[DiscountAmount],
            [dbo].[FactInternetSales].[ProductStandardCost],
            [dbo].[FactInternetSales].[TotalProductCost],
            [dbo].[FactInternetSales].[SalesAmount],
            [dbo].[FactInternetSales].[TaxAmt],
            [dbo].[FactInternetSales].[Freight],
            [dbo].[FactInternetSales].[CarrierTrackingNumber],
            [dbo].[FactInternetSales].[CustomerPONumber]
          FROM [dbo].[FactInternetSales]
          WHERE OrderDateKey &gt; '1280'
        </QueryDefinition>
      </Source>
    </Binding>
  </Bindings>
  <Type>ProcessAdd</Type>
  <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
</Process>