Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
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.
Annotazioni
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 singola partizione si applica ai modelli DirectQuery a tutti i livelli di compatibilità.
Uso di partizioni in modalità DirectQuery
Per ogni tabella, è necessario specificare una singola partizione da usare come origine dati DirectQuery. Se sono presenti più partizioni, quando si passa al modello per abilitare la modalità DirectQuery, 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 solo una singola partizione in 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. Lo sviluppatore che crea la definizione della partizione è responsabile di garantire che le partizioni non si sovrappongano. Analysis Services non verifica se i record appartengono a una o più partizioni.
Le partizioni in un modello tabulare memorizzato nella cache si comportano allo stesso modo. Se si usa un modello in memoria, mentre si accede alla cache, le formule DAX vengono valutate per ogni partizione e i risultati vengono combinati. Tuttavia, quando un modello tabulare usa la modalità DirectQuery, sarebbe impossibile valutare più partizioni, combinare i risultati e convertirlo in un'istruzione SQL per l'invio all'archivio dati relazionale. In questo modo si potrebbe causare una perdita inaccettabile di prestazioni, nonché potenziali imprecisioni man mano che i risultati vengono aggregati.
Pertanto, per le query con risposta in modalità DirectQuery, il server usa una singola 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 è possibile usare per rispondere alle query in modalità DirectQuery.
Se non si definisce in modo esplicito una partizione, il motore invia semplicemente una query SQL all'intera origine dati relazionale, esegue qualsiasi operazione basata su set dettata dalla formula DAX e restituisce i risultati della query.
Modificare una partizione DirectQuery
Poiché una sola partizione in una tabella può essere designata come partizione DirectQuery, per impostazione predefinita, Analysis Services usa la prima partizione creata nella tabella. Durante la creazione del progetto 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
In Visual Studio, in Progettazione modelli fare clic sulla tabella (scheda) che contiene la tabella partizionata.
Fare clic su Estensioni>Tabella>Partizioni.
In Gestione Partizioni, la partizione che è la partizione corrente di Direct Query è indicata dal prefisso (DirectQuery) nel nome della partizione.
Selezionare una partizione diversa dall'elenco Partizioni e 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à Direct Query.
Modificare la partizione DirectQuery per un modello tabulare distribuito
In SQL Server Management Studio aprire il database modello in Esplora oggetti.
Espandere il nodo Tabelle , quindi fare clic con il pulsante destro del mouse sulla tabella partizionata e quindi scegliere Partizioni.
La partizione designata per l'uso con la modalità DirectQuery ha il prefisso (DirectQuery) nel nome della partizione.
Per passare a una partizione diversa, fare clic sull'icona della barra degli strumenti Direct Query per aprire la finestra di dialogo Imposta partizione DirectQuery . L'icona della barra degli strumenti DirectQuery non è disponibile nei modelli non abilitati per Direct Query.
Scegliere una partizione diversa dall'elenco a discesa Nome partizione e quindi modificare le opzioni di elaborazione nella partizione, se necessario.