Creare partizioniCreate partitions

In questa lezione verranno create partizioni per dividere la tabella FactInternetSales in parti logiche più piccole che possono essere elaborate (aggiornate) indipendentemente da altre partizioni.In this lesson, you create partitions to divide the FactInternetSales table into smaller logical parts that can be processed (refreshed) independent of other partitions. Per impostazione predefinita, ogni tabella inclusa nel modello ha una sola partizione, che include tutte le colonne e le righe della tabella.By default, every table you include in your model has one partition, which includes all the table’s columns and rows. Per la tabella FactInternetSales i dati verranno suddivisi in base all'anno, ovvero una partizione per ognuno dei cinque anni della tabella.For the FactInternetSales table, we want to divide the data by year; one partition for each of the table’s five years. Ogni partizione può quindi essere elaborata in modo indipendente.Each partition can then be processed independently. Per altre informazioni, vedere Partitions (Partizioni).To learn more, see Partitions.

Tempo previsto per il completamento della lezione: 15 minutiEstimated time to complete this lesson: 15 minutes

PrerequisitiPrerequisites

Questo argomento fa parte di un'esercitazione sulla creazione di modelli tabulari, con lezioni che è consigliabile completare nell'ordine indicato.This topic is part of a tabular modeling tutorial, which should be completed in order. Prima di eseguire le attività in questa lezione, è necessario avere completato la lezione precedente: Lezione 9: Creare gerarchie.Before performing the tasks in this lesson, you should have completed the previous lesson: Lesson 9: Create Hierarchies.

Creare partizioniCreate partitions

Per creare partizioni nella tabella FactInternetSalesTo create partitions in the FactInternetSales table

  1. In Esplora modelli tabulari espandere Tabelle e quindi fare clic con il pulsante destro del mouse su FactInternetSales > Partizioni.In Tabular Model Explorer, expand Tables, and then right-click FactInternetSales > Partitions.

  2. In Gestione partizioni fare clic su Copia e quindi modificare il nome in FactInternetSales2010.In Partition Manager, click Copy, and then change the name to FactInternetSales2010.

    Dato che si vuole che la partizione includa solo le righe all'interno di un determinato periodo, ovvero l'anno 2010, è necessario modificare l'espressione di query.Because you want the partition to include only those rows within a certain period, for the year 2010, you must modify the query expression.

  3. Fare clic su Progetta per aprire l'Editor di query e quindi fare clic sulla query FactInternetSales2010.Click Design to open Query Editor, and then click the FactInternetSales2010 query.

  4. Nell'anteprima fare clic sulla freccia in giù nell'intestazione di colonna OrderDate e quindi fare clic su Filtri per data/ora > Tra.In preview, click the down arrow in the OrderDate column heading, and then click Date/Time Filters > Between.

    aas-lesson10-query-editor

  5. Nella finestra di dialogo Filtra righe in Mostra righe in cui: OrderDate, lasciare è dopo o uguale a e quindi immettere 1/1/2010 nel campo della data.In the Filter Rows dialog box, in Show rows where: OrderDate, leave is after or equal to, and then in the date field, enter 1/1/2010. Lasciare selezionato l'operatore And, selezionare è prima di, immettere 1/1/2011 nel campo della data e quindi fare clic su OK.Leave the And operator selected, then select is before, then in the date field, enter 1/1/2011, and then click OK.

    aas-lesson10-filter-rows

    Si noti che nell'Editor di query, in Passaggi applicati, è visualizzato un altro passaggio denominato Filtrate righe.Notice in Query Editor, in APPLIED STEPS, you see another step named Filtered Rows. Questo è il filtro applicato per selezionare solo le date degli ordini dal 2010.This filter is to select only order dates from 2010.

  6. Fare clic su Importa.Click Import.

    In Gestione partizioni si noti che l'espressione di query include ora una clausola Filtrate righe aggiuntiva.In Partition Manager, notice the query expression now has an additional Filtered Rows clause.

    aas-lesson10-query

    Questa istruzione specifica che la partizione deve includere solo i dati nelle righe in cui OrderDate rientra nell'anno di calendario 2010 come specificato nella clausola Filtrate righe.This statement specifies this partition should include only the data in those rows where the OrderDate is in the 2010 calendar year as specified in the filtered rows clause.

Per creare una partizione per l'anno 2011To create a partition for the 2011 year

  1. Nell'elenco delle partizioni fare clic sulla partizione FactInternetSales2010 creata e quindi fare clic su Copia.In the partitions list, click the FactInternetSales2010 partition you created, and then click Copy. Modificare il nome della partizione in FactInternetSales2011.Change the partition name to FactInternetSales2011.

    Non è necessario usare l'Editor di query per creare una nuova clausola Righe filtrate.You do not need to use Query Editor to create a new filtered rows clause. Dato che è stata creata una copia della query per il 2010, è sufficiente apportare una piccola modifica nella query per il 2011.Because you created a copy of the query for 2010, all you need to do is make a slight change in the query for 2011.

  2. Per fare in modo che questa partizione includa solo le righe per l'anno 2011, in Espressione query sostituire gli anni nella clausola Filtrate righe rispettivamente con 2011 e 2012, come di seguito:In Query Expression, in-order for this partition to include only those rows for the 2011 year, replace the years in the Filtered Rows clause with 2011 and 2012, respectively, like:

    let
        Source = #"SQL/localhost;AdventureWorksDW2014",
        dbo_FactInternetSales = Source{[Schema="dbo",Item="FactInternetSales"]}[Data],
        #"Removed Columns" = Table.RemoveColumns(dbo_FactInternetSales,{"OrderDateKey", "DueDateKey", "ShipDateKey"}),
        #"Filtered Rows" = Table.SelectRows(#"Removed Columns", each [OrderDate] >= #datetime(2011, 1, 1, 0, 0, 0) and [OrderDate] < #datetime(2012, 1, 1, 0, 0, 0))
    in
        #"Filtered Rows"
    

Per creare partizioni per gli anni 2012, 2013 e 2014To create partitions for 2012, 2013, and 2014.

  • Seguire i passaggi precedenti e creare partizioni per gli anni 2012, 2013 e 2014, modificando gli anni nella clausola Filtrate righe in modo da includere solo le righe per ognuno di questi anni.Follow the previous steps, creating partitions for 2012, 2013, and 2014, changing the years in the Filtered Rows clause to include only rows for that year.

Eliminare la partizione FactInternetSalesDelete the FactInternetSales partition

Ora che sono disponibili partizioni per ogni anno, è possibile eliminare la partizione FactInternetSales, in modo da evitare sovrapposizioni quando si sceglie Elabora tutto per l'elaborazione delle partizioni.Now that you have partitions for each year, you can delete the FactInternetSales partition; preventing overlap when choosing Process all when processing partitions.

Per eliminare la partizione FactInternetSalesTo delete the FactInternetSales partition

  • Fare clic sulla partizione FactInternetSales e quindi fare clic su Elimina.Click the FactInternetSales partition, and then click Delete.

Elaborare le partizioniProcess partitions

In Gestione partizioni, si noti che la colonna Ultima elaborazione per ogni nuova partizione creata indica che queste partizioni non sono mai state elaborate.In Partition Manager, notice the Last Processed column for each of the new partitions you created shows these partitions have never been processed. Quando si creano partizioni, è necessario eseguire un'operazione Elabora partizioni o Elabora tabella per aggiornare i dati in tali partizioni.When you create partitions, you should run a Process Partitions or Process Table operation to refresh the data in those partitions.

Per elaborare le partizioni FactInternetSalesTo process the FactInternetSales partitions

  1. Fare clic su OK per chiudere Gestione partizioni.Click OK to close Partition Manager.

  2. Fare clic sulla tabella FactInternetSales e quindi fare clic sul menu Modello > Elabora > Elabora partizioni.Click the FactInternetSales table, then click the Model menu > Process > Process Partitions.

  3. Nella finestra di dialogo Elabora partizioni verificare che Modalità sia impostata su Elaborazione predefinita.In the Process Partitions dialog box, verify Mode is set to Process Default.

  4. Selezionare la casella di controllo Elaborazione per ognuna delle cinque partizioni create e quindi fare clic su OK.Select the checkbox in the Process column for each of the five partitions you created, and then click OK.

    aas-lesson10-process-partitions

    Se vengono richieste le credenziali di rappresentazione, immettere il nome utente e la password di Windows specificati nella lezione 2.If you're prompted for Impersonation credentials, enter the Windows user name and password you specified in Lesson 2.

    Verrà aperta la finestra di dialogo Elaborazione dati in cui vengono visualizzati i dettagli dell'elaborazione per ogni partizione.The Data Processing dialog box appears and displays process details for each partition. Si noti che viene trasferito un numero diverso di righe per ogni partizione,Notice that a different number of rows for each partition are transferred. perché ogni partizione include solo le righe per l'anno specificato nella clausola WHERE nell'istruzione SQL.Each partition includes only those rows for the year specified in the WHERE clause in the SQL Statement. Al termine dell'elaborazione, proseguire e chiudere la finestra di dialogo Elaborazione dati.When processing is finished, go ahead and close the Data Processing dialog box.

    aas-lesson10-process-complete

    Passaggi successiviWhat's next?

    Passare alla lezione successiva: Lezione 11: Creare ruoli.Go to the next lesson: Lesson 11: Create Roles.