Condividi tramite


Definire le partizioni nei modelli DirectQuery

Si applica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Questo articolo descrive come vengono usate le partizioni nei modelli DirectQuery. Per informazioni più generali sulle partizioni nei modelli tabulari, vedere Partizioni nei modelli tabulari.

Nota

Anche se una tabella può avere più partizioni, in modalità DirectQuery è possibile designare solo una di esse per l'uso nell'esecuzione di query. Il requisito della partizione singola si applica ai modelli DirectQuery a tutti i livelli di compatibilità.

Uso delle partizioni in modalità DirectQuery

Per ogni tabella, è necessario specificare una sola partizione da utilizzare come origine dati DirectQuery. In presenza di più partizioni, quando si abilita la modalità DirectQuery per il modello, per impostazione predefinita la prima partizione creata nella tabella viene contrassegnata come partizione DirectQuery. È possibile modificarlo in un secondo momento usando Gestione partizioni in Progettazione modelli tabulari in Visual Studio.

Perché consentire una sola partizione nella modalità DirectQuery? Nei modelli tabulari (come nei modelli OLAP), le partizioni di una tabella sono definite dalle query M di PowerQuery o dalle query SQL. È responsabilità dello sviluppatore che crea la definizione della partizione assicurarsi che le partizioni non si sovrappongano. In Analysis Services non viene controllato se i record fanno parte di una o più partizioni.

Le partizioni in un modello tabulare memorizzato nella cache si comportano allo stesso modo. Se si utilizza un modello in memoria, durante l'accesso alla cache, le formule DAX vengono valutate per ogni partizione e i risultati vengono combinati. Tuttavia, quando un modello tabulare utilizza la modalità DirectQuery, sarebbe impossibile valutare più partizioni, combinare i risultati e convertirli in un'istruzione SQL per l'invio all'archivio dati relazionale. Questa operazione potrebbe causare una calo inaccettabile delle prestazioni, nonché imprecisioni potenziali durante l'aggregazione dei dati.

Quindi, per query risposte in modalità DirectQuery, il server usa una sola partizione contrassegnata come partizione primaria per l'accesso DirectQuery, denominata partizione DirectQuery. La query SQL specificata nella definizione di questa partizione definisce il set completo di dati che possono essere usati per rispondere alle query in modalità DirectQuery.

Se non si definisce in modo esplicito una partizione, il motore emette una query SQL sull'intera origine dati relazionale, esegue eventuali operazioni basate su set imposte dalla formula DAX e restituisce i risultati della query.

Modificare una partizione DirectQuery

Poiché è possibile designare come partizione DirectQuery solo una partizione di una tabella, per impostazione predefinita in Analysis Services viene utilizzata la prima partizione creata nella tabella. Durante la creazione di progetti di modello, è possibile modificare la partizione DirectQuery usando Gestione partizioni. Per i modelli distribuiti, è possibile modificare la partizione DirectQuery usando SQL Server Management Studio.

Modificare la partizione DirectQuery per un progetto di modello tabulare

  1. In Visual Studio, in Progettazione modelli fare clic sulla tabella (scheda) che contiene la tabella partizionata.

  2. Fare clic su Estensioni>Partizionitabella>.

  3. In Gestione partizioninel nome della partizione attualmente designata come partizione DirectQuery è contenuto il prefisso (DirectQuery) .

    Selezionare una partizione diversa dall'elenco Partizioni , quindi fare clic su Imposta come DirectQuery. Il pulsante Imposta come DirectQuery non è abilitato quando è selezionata la partizione DirectQuery corrente e non è visibile se il modello non è stato abilitato per la modalità DirectQuery.

Modificare la partizione DirectQuery per un modello tabulare distribuito

  1. In SQL Server Management Studio aprire il database modello in Esplora oggetti.

  2. Espandere il nodo Tabelle , fare clic con il pulsante destro del mouse sulla tabella partizionata e selezionare Partizioni.

    Nel nome della partizione designata per l'utilizzo nella modalità DirectQuery è contenuto il prefisso (DirectQuery).

  3. Per cambiare la partizione, fare clic sull'icona della barra degli strumenti DirectQuery per aprire la finestra di dialogo Imposta partizione DirectQuery . L'icona della barra degli strumenti DirectQuery non è disponibile per i modelli che non sono stati abilitati per DirectQuery.

  4. Scegliere una partizione diversa dall'elenco a discesa Nome partizione e modificare le opzioni di elaborazione sulla partizione, se necessario.

Vedi anche

Partizioni