Condividi tramite


Partizioni e modalità DirectQuery (SSAS tabulare)

In questa sezione viene illustrato come utilizzare le partizioni nei modelli DirectQuery. Per informazioni più generali sulle partizioni nei modelli tabulari, vedere Partizioni (SSAS tabulare).For more general information about partitions in tabular models, see Partitions (SSAS Tabular).

Per istruzioni su come modificare la partizione usata o visualizzare informazioni sulla partizione, vedere Modificare la partizione DirectQuery (SSAS tabulare).

Utilizzo di 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 SQL Server Data Tools (SSDT).

Perché consentire una sola partizione nella modalità DirectQuery?

Nei modelli tabulari, come nei modelli OLAP, le partizioni di una tabella sono definite tramite 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.

Se sono state create più partizioni in una tabella e si seleziona una partizione come DirectQuery, per impostazione predefinita tutte le altre partizioni vengono contrassegnate automaticamente per il solo utilizzo in memoria.

Partizioni nei modelli memorizzati nella cache e nei modelli DirectQuery

Quando si configura una partizione DirectQuery, è necessario specificare le opzioni di elaborazione per la partizione.

Sono disponibili due opzioni di elaborazione per la partizione DirectQuery: Per impostare questa proprietà, utilizzare Gestione partizioni in SQL Server Data Tools (SSDT) o SQL Server Management Studio e selezionare la proprietà Processing Option . Nella tabella seguente vengono elencati i valori di questa proprietà e vengono illustrati gli effetti di ciascun valore combinato alla proprietà DirectQueryUsage nella stringa di connessione:

Proprietà DirectQueryUsage ProprietàOpzione di elaborazione Note
DirectQuery Non elaborare mai questa partizione Se il modello utilizza solo DirectQuery, l'elaborazione non è mai necessaria.

Nei modelli ibridi è possibile configurare la partizione DirectQuery in modo che non venga mai elaborata. Ad esempio, se si lavora su un set di dati di grandi dimensioni e non si desidera che i risultati completi vengano aggiunti alla cache, è possibile specificare che la partizione DirectQuery includa l'unione dei risultati di tutte le altre partizioni nella tabella e quindi non elaborare mai l'unione. Le query dirette all'origine relazionale non saranno interessate, mentre le query sui dati memorizzati nella cache combineranno i dati delle altre partizioni.
In-Memory con DirectQuery Consenti l'elaborazione della partizione Se il modello utilizza la modalità ibrida, è necessario utilizzare la stessa partizione per le query su In-Memory e sull'origine dati DirectQuery.

Vedere anche

Partizioni (SSAS tabulare)